We need to be able to handle the following cases: ExpressionStatement CallExpression Identifier | MemberExpression ExpressionLiterals: [ CallExpression StringLiteral NumericLiteral ArrayLiteralExpression ExpressionLiterals ObjectLiteralExpression PropertyAssignment Identifier ExpressionLiterals ]

Hierarchy (view full)

Constructors

Properties

parser: ParseFunction

Methods

  • We should separate loading the parser into its own function because loading the grammar takes some time. If there are multiple concurrent parse calls, it's faster to just wait for building the parser once and then use it for all subsequent calls. See expression.test.ts for an example.

    Returns Promise<void>

  • Parses the given text. It first ensures the parser is loaded, then tries to parse the text. If the parsing fails, it throws an error. If the parsing is successful, it returns the parsed expression.

    Parameters

    • text: string

      The text to be parsed.

    Returns Promise<ParsedType>

    The parsed expression

""