specify the end token for simple block in _expr() (#580)
This commit is contained in:
parent
764fe399f3
commit
319ec320c7
|
@ -4777,7 +4777,7 @@ self.parserlib = (() => {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
_expr(inFunction) {
|
_expr(inFunction, endToken = Tokens.RPAREN) {
|
||||||
const stream = this._tokenStream;
|
const stream = this._tokenStream;
|
||||||
const values = [];
|
const values = [];
|
||||||
|
|
||||||
|
@ -4786,7 +4786,7 @@ self.parserlib = (() => {
|
||||||
if (!value && !values.length) return null;
|
if (!value && !values.length) return null;
|
||||||
|
|
||||||
// get everything inside the parens and let validateProperty handle that
|
// get everything inside the parens and let validateProperty handle that
|
||||||
if (!value && inFunction && stream.peek() !== Tokens.RPAREN) {
|
if (!value && inFunction && stream.peek() !== endToken) {
|
||||||
stream.get();
|
stream.get();
|
||||||
value = new PropertyValuePart(stream._token);
|
value = new PropertyValuePart(stream._token);
|
||||||
} else if (!value) {
|
} else if (!value) {
|
||||||
|
@ -4914,8 +4914,9 @@ self.parserlib = (() => {
|
||||||
inFunction && Tokens.LBRACE,
|
inFunction && Tokens.LBRACE,
|
||||||
])) {
|
])) {
|
||||||
const token = stream._token;
|
const token = stream._token;
|
||||||
token.expr = this._expr(inFunction);
|
const endToken = Tokens.type(token.endChar);
|
||||||
stream.mustMatch(Tokens.type(token.endChar));
|
token.expr = this._expr(inFunction, endToken);
|
||||||
|
stream.mustMatch(endToken);
|
||||||
return finalize(token, token.value + (token.expr || '') + token.endChar);
|
return finalize(token, token.value + (token.expr || '') + token.endChar);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user