Skip to content

Invalid AST : Return valid part of member expression#318

Merged
xoofx merged 1 commit intoscriban:masterfrom
NeVeSpl:InvalidASTReturnValidPartOfMemberExpression
Jan 26, 2021
Merged

Invalid AST : Return valid part of member expression#318
xoofx merged 1 commit intoscriban:masterfrom
NeVeSpl:InvalidASTReturnValidPartOfMemberExpression

Conversation

@NeVeSpl
Copy link
Copy Markdown
Contributor

@NeVeSpl NeVeSpl commented Jan 24, 2021

For given incomplete template:

{{  if dto. }}

when parser finds problem in expression, in that case lack of identifier after dot, it does not include whole expression in AST:

ScriptPage (0 - 9)
  ScriptBlockStatement (0 - 9)
    ScriptEscapeStatement (0 - 1)  [{{]
    ScriptIfStatement (4 - 9)
      ScriptKeyword (4 - 5)  [if]
  ScriptBlockStatement END

after small change done in this pull request, the valid part of expression will be returned:

ScriptPage (0 - 9)
  ScriptBlockStatement (0 - 9)
    ScriptEscapeStatement (0 - 1)  [{{]
    ScriptIfStatement (4 - 9)
      ScriptKeyword (4 - 5)  [if]
      ScriptVariableGlobal (7 - 9)  [dto]
  ScriptBlockStatement END

@xoofx xoofx merged commit 4c8b64b into scriban:master Jan 26, 2021
@xoofx
Copy link
Copy Markdown
Member

xoofx commented Jan 26, 2021

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants