Lines Matching full:virtual
63 virtual ~ParserImpl() = default;
69 [[nodiscard]] virtual bool IsETSParser() const noexcept in IsETSParser()
97 virtual void ParseProgram(ScriptKind kind);
138 virtual void ParseTrailingBlock([[maybe_unused]] ir::CallExpression *callExpr) {} in ParseTrailingBlock()
159 virtual ir::Expression *ParseCatchParam();
204 virtual bool IsExternal() const in IsExternal()
217 …virtual ir::Expression *ParsePotentialExpressionSequence(ir::Expression *expr, ExpressionParseFlag…
250 virtual ir::ThisExpression *ParseThisExpression();
260 virtual ir::Statement *ParseAssertStatement();
261 virtual bool ValidateLabeledStatement(lexer::TokenType type);
266 virtual ir::Statement *ParseFunctionStatement(StatementParsingFlags flags);
268 virtual ir::ClassDeclaration *ParseClassStatement(StatementParsingFlags flags,
272 virtual ir::ETSStructDeclaration *ParseStructStatement(StatementParsingFlags flags,
286 virtual void ValidateRestParameter(ir::Expression *param);
287 virtual bool ValidateBreakLabel(util::StringView label);
288 virtual bool ValidateContinueLabel(util::StringView label);
294 …virtual void CreateImplicitConstructor(ir::MethodDefinition *&ctor, ArenaVector<ir::AstNode *> &pr…
326 [[nodiscard]] virtual std::unique_ptr<lexer::Lexer> InitLexer(const SourceFile &sourceFile);
334 … virtual ir::Statement *ParseStatement(StatementParsingFlags flags = StatementParsingFlags::NONE);
336 …virtual ir::Expression *ParseExpression(ExpressionParseFlags flags = ExpressionParseFlags::NO_OPTS…
338 …virtual ir::Expression *ParseExpressionOrTypeAnnotation(lexer::TokenType type, ExpressionParseFlag…
340 …virtual ir::Expression *ParsePatternElement(ExpressionParseFlags flags = ExpressionParseFlags::NO_…
343 …virtual bool ParsePotentialNonNullExpression(ir::Expression **returnExpression, lexer::SourcePosit…
344 virtual ir::AstNode *ParseImportSpecifiers(ArenaVector<ir::AstNode *> *specifiers);
345 virtual ir::Statement *ParseImportDeclaration(StatementParsingFlags flags);
347 virtual ir::Expression *ParsePropertyDefinition(
350 …virtual ir::ObjectExpression *ParseObjectExpression(ExpressionParseFlags flags = ExpressionParseFl…
354 …virtual ir::ArrayExpression *ParseArrayExpression(ExpressionParseFlags flags = ExpressionParseFlag…
357 …virtual ir::ArrowFunctionExpression *ParsePotentialArrowExpression(ir::Expression **returnExpressi…
359 …virtual bool ParsePotentialGenericFunctionCall(ir::Expression *primaryExpr, ir::Expression **retur…
361 virtual ir::Expression *ParsePotentialAsExpression(ir::Expression *primaryExpression);
362 virtual bool IsNamedFunctionExpression();
363 virtual ir::Identifier *ParsePrimaryExpressionIdent(ExpressionParseFlags flags);
364 virtual bool ValidateArrowFunctionRestParameter(ir::SpreadElement *restElement);
365 virtual ir::Statement *ParsePotentialExpressionStatement(StatementParsingFlags flags);
366 virtual ArenaVector<ir::Expression *> ParseFunctionParams();
367 virtual ir::Expression *CreateParameterThis(ir::TypeNode *typeAnnotation);
368 virtual ir::Expression *ParseFunctionParameter();
369 virtual void ConvertThisKeywordToIdentIfNecessary() {} in ConvertThisKeywordToIdentIfNecessary()
370 virtual void ParseCatchParamTypeAnnotation(ir::AnnotatedExpression *param);
372 virtual ir::ClassDefinition *ParseClassDefinition(ir::ClassDefinitionModifiers modifiers,
374 virtual ir::Identifier *ParseClassIdent(ir::ClassDefinitionModifiers modifiers);
375 virtual ir::Statement *ParsePotentialConstEnum(VariableParsingFlags flags);
376 virtual ir::AstNode *ParseClassElement(const ArenaVector<ir::AstNode *> &properties,
378 virtual bool CheckClassElement(ir::AstNode *property, ir::MethodDefinition *&ctor,
380 … virtual void ValidateClassMethodStart(ClassElementDescriptor *desc, ir::TypeNode *typeAnnotation);
381 virtual ir::MethodDefinition *ParseClassMethod(ClassElementDescriptor *desc,
385 …virtual void ValidateClassSetter(ClassElementDescriptor *desc, const ArenaVector<ir::AstNode *> &p…
387 …virtual void ValidateClassGetter(ClassElementDescriptor *desc, const ArenaVector<ir::AstNode *> &p…
389 virtual ir::ModifierFlags ParseModifiers();
390 virtual ir::Statement *ParseConstStatement(StatementParsingFlags flags);
392 virtual ir::AnnotatedExpression *ParseVariableDeclaratorKey(VariableParsingFlags flags);
393 …virtual ir::VariableDeclarator *ParseVariableDeclarator(ir::Expression *init, lexer::SourcePositio…
395 …virtual ir::VariableDeclarator *ParseVariableDeclaratorInitializer(ir::Expression *init, VariableP…
397 virtual bool IsModifierKind(const lexer::Token &token);
398 virtual void ConsumeClassPrivateIdentifier(ClassElementDescriptor *desc, char32_t *nextCp);
399 virtual void ReportPossibleOutOfBoundaryJumpError(bool allowBreak);
400 virtual void ReportIllegalBreakError(const lexer::SourcePosition &startLoc);
401 virtual void ReportIllegalContinueError();
402 virtual void ReportIfBodyEmptyError(ir::Statement *consequent);
403 virtual void ReportMultipleDefaultError();
404 virtual void ReportIllegalNewLineErrorAfterThrow();
405 virtual void ReportIfVarDeclaration(VariableParsingFlags flags);
406 virtual ir::Expression *ParsePrefixAssertionExpression();
408 virtual ir::Expression *ParseCoverParenthesizedExpressionAndArrowParameterList(
410 virtual void CheckIfStaticConstructor(ir::ModifierFlags flags);
411 …virtual std::tuple<bool, bool, bool> ParseComputedClassFieldOrIndexSignature(ir::Expression **prop…
413 virtual ir::Expression *ParseUnaryOrPrefixUpdateExpression(
415 virtual ir::Expression *ParsePrimaryExpressionWithLiterals(ExpressionParseFlags flags);
420 …virtual ir::Expression *ParsePrimaryExpression(ExpressionParseFlags flags = ExpressionParseFlags::…
421 …virtual ir::Expression *ParsePostPrimaryExpression(ir::Expression *primaryExpr, lexer::SourcePosit…
427 virtual ir::ClassElement *ParseClassStaticBlock();
428 virtual ParserStatus ValidateArrowParameter(ir::Expression *expr, bool *seenOptional);
430 virtual ArrowFunctionDescriptor ConvertToArrowParameter(ir::Expression *expr, bool isAsync);
431 virtual ir::Expression *ParseNewExpression();
433 virtual ir::TSTypeParameterDeclaration *ParseFunctionTypeParameters() in ParseFunctionTypeParameters()
438 virtual ir::TypeNode *ParseFunctionReturnType([[maybe_unused]] ParserStatus status) in ParseFunctionReturnType()
443 …virtual ir::ScriptFunctionFlags ParseFunctionThrowMarker([[maybe_unused]] const bool isRethrowsAll… in ParseFunctionThrowMarker()
449 …virtual ir::Identifier *ParseIdentifierFormatPlaceholder(std::optional<NodeFormatType> nodeFormat);
450 virtual ir::Statement *ParseStatementFormatPlaceholder();
451 virtual ir::AstNode *ParseTypeParametersFormatPlaceholder();
452 virtual ArenaVector<ir::AstNode *> &ParseAstNodesArrayFormatPlaceholder();
453 virtual ArenaVector<ir::Statement *> &ParseStatementsArrayFormatPlaceholder();
454 virtual ArenaVector<ir::Expression *> &ParseExpressionsArrayFormatPlaceholder();
456 virtual std::tuple<bool, ir::BlockStatement *, lexer::SourcePosition, bool> ParseFunctionBody(
458 virtual ir::AstNode *ParseImportDefaultSpecifier(ArenaVector<ir::AstNode *> *specifiers);
459 virtual ir::Statement *ParseExportDeclaration(StatementParsingFlags flags);
462 …virtual ir::ExportDefaultDeclaration *ParseExportDefaultDeclaration(const lexer::SourcePosition &s…
464 …virtual ir::ExportNamedDeclaration *ParseNamedExportDeclaration(const lexer::SourcePosition &start…
465 virtual bool ValidateForInStatement() in ValidateForInStatement()
470 virtual ir::Statement *ParseTryStatement();
471 virtual ir::ThrowStatement *ParseThrowStatement();
472 virtual ir::DebuggerStatement *ParseDebuggerStatement();
474 …virtual ir::Statement *ParseModuleDeclaration(StatementParsingFlags flags = StatementParsingFlags:…
479 virtual ir::Statement *ParseInterfaceDeclaration([[maybe_unused]] bool isStatic) in ParseInterfaceDeclaration()
485 virtual ir::Statement *ParseEnumDeclaration([[maybe_unused]] bool isConst = false,
491 virtual std::tuple<ir::Expression *, ir::TSTypeParameterInstantiation *> ParseSuperClass();
492 virtual ir::Expression *ParseSuperClassReference();