Files
ms/packages/molang/src/parser/parselets/scope.ts
MiaoWoo 6816e51239 feat: add molang package
1. upgrade bukkit chat
2. fix config update error

Signed-off-by: MiaoWoo <admin@yumc.pw>
2022-02-12 16:29:40 +08:00

23 lines
627 B
TypeScript

import { Parser } from '../parse'
import { Token } from '../../tokenizer/token'
import { IPrefixParselet } from './prefix'
import { GroupExpression } from '../expressions/group'
export class ScopeParselet implements IPrefixParselet {
constructor(public precedence = 0) {}
parse(parser: Parser, token: Token) {
let expr = parser.parseExpression(this.precedence)
if (
parser.config.useOptimizer &&
parser.config.earlyReturnsSkipTokenization &&
expr.isReturn
)
parser.match('CURLY_RIGHT')
else parser.consume('CURLY_RIGHT')
return parser.config.keepGroups ? new GroupExpression(expr, '{}') : expr
}
}