Lines Matching refs:Impl
122 // The Impl parameter is the actual class of the parser/pre-parser,
128 // template <typename Impl>
132 // // parser behavior. The Impl parameter is the actual derived
135 // template <typename Impl>
154 // implementation class Impl, it is expected to contain the following typedefs:
157 // struct ParserTypes<Impl> {
158 // // Synonyms for ParserBase<Impl> and Impl, respectively.
160 // typedef Impl;
184 template <typename Impl>
200 template <typename Impl>
203 // Shorten type names defined by ParserTypes<Impl>.
204 using Types = ParserTypes<Impl>;
243 Impl* impl() { return static_cast<Impl*>(this); }
244 const Impl* impl() const { return static_cast<const Impl*>(this); }
309 friend class v8::internal::ExpressionScope<ParserTypes<Impl>>;
310 friend class v8::internal::ExpressionParsingScope<ParserTypes<Impl>>;
311 friend class v8::internal::ArrowHeadParsingScope<ParserTypes<Impl>>;
373 DCHECK_IMPLIES(Impl::IsIterationStatement(statement_),
375 DCHECK_IMPLIES(!Impl::IsIterationStatement(statement_),
388 bool is_iteration() const { return Impl::IsIterationStatement(statement_); }
534 friend Impl;
548 DCHECK_IMPLIES(Impl::IsNull(pattern), Impl::IsNull(initializer));
1523 ParameterParsingScope(Impl* parser, FormalParametersT* parameters)
1531 Impl* parser_;
1537 explicit FunctionParsingScope(Impl* parser)
1545 Impl* parser_;
1624 template <typename Impl>
1625 ParserBase<Impl>::FunctionState::FunctionState(
1646 template <typename Impl>
1647 ParserBase<Impl>::FunctionState::~FunctionState() {
1651 template <typename Impl>
1652 void ParserBase<Impl>::ReportUnexpectedToken(Token::Value token) {
1656 template <typename Impl>
1657 bool ParserBase<Impl>::ClassifyPropertyIdentifier(
1686 template <typename Impl>
1687 typename ParserBase<Impl>::IdentifierT
1688 ParserBase<Impl>::ParseAndClassifyIdentifier(Token::Value next) {
1720 template <class Impl>
1721 typename ParserBase<Impl>::IdentifierT ParserBase<Impl>::ParseIdentifier(
1736 template <typename Impl>
1737 typename ParserBase<Impl>::IdentifierT
1738 ParserBase<Impl>::ParseNonRestrictedIdentifier() {
1750 template <typename Impl>
1751 typename ParserBase<Impl>::IdentifierT ParserBase<Impl>::ParsePropertyName() {
1762 template <typename Impl>
1763 typename ParserBase<Impl>::ExpressionT
1764 ParserBase<Impl>::ParsePropertyOrPrivatePropertyName() {
1799 template <typename Impl>
1800 bool ParserBase<Impl>::ValidateRegExpLiteral(const AstRawString* pattern,
1819 template <typename Impl>
1820 typename ParserBase<Impl>::ExpressionT ParserBase<Impl>::ParseRegExpLiteral() {
1846 template <typename Impl>
1847 typename ParserBase<Impl>::ExpressionT ParserBase<Impl>::ParseBindingPattern() {
1882 template <typename Impl>
1883 typename ParserBase<Impl>::ExpressionT
1884 ParserBase<Impl>::ParsePrimaryExpression() {
2032 template <typename Impl>
2033 typename ParserBase<Impl>::ExpressionT ParserBase<Impl>::ParseExpression() {
2041 template <typename Impl>
2042 typename ParserBase<Impl>::ExpressionT
2043 ParserBase<Impl>::ParseAssignmentExpression() {
2050 template <typename Impl>
2051 typename ParserBase<Impl>::ExpressionT
2052 ParserBase<Impl>::ParseExpressionCoverGrammar() {
2099 template <typename Impl>
2100 typename ParserBase<Impl>::ExpressionT
2101 ParserBase<Impl>::ParseArrowParametersWithRest(
2102 typename ParserBase<Impl>::ExpressionListT* list,
2139 template <typename Impl>
2140 typename ParserBase<Impl>::ExpressionT ParserBase<Impl>::ParseArrayLiteral() {
2192 template <class Impl>
2193 typename ParserBase<Impl>::ExpressionT ParserBase<Impl>::ParseProperty(
2350 template <typename Impl>
2351 typename ParserBase<Impl>::ClassLiteralPropertyT
2352 ParserBase<Impl>::ParseClassPropertyDefinition(ClassInfo* class_info,
2506 template <typename Impl>
2507 typename ParserBase<Impl>::ExpressionT ParserBase<Impl>::ParseMemberInitializer(
2550 template <typename Impl>
2551 typename ParserBase<Impl>::BlockT ParserBase<Impl>::ParseClassStaticBlock(
2576 template <typename Impl>
2577 typename ParserBase<Impl>::ObjectLiteralPropertyT
2578 ParserBase<Impl>::ParseObjectPropertyDefinition(ParsePropertyInfo* prop_info,
2751 template <typename Impl>
2752 typename ParserBase<Impl>::ExpressionT ParserBase<Impl>::ParseObjectLiteral() {
2828 template <typename Impl>
2829 void ParserBase<Impl>::ParseArguments(
2830 typename ParserBase<Impl>::ExpressionListT* args, bool* has_spread,
2886 template <typename Impl>
2887 typename ParserBase<Impl>::ExpressionT
2888 ParserBase<Impl>::ParseAssignmentExpressionCoverGrammar() {
3016 template <typename Impl>
3017 typename ParserBase<Impl>::ExpressionT
3018 ParserBase<Impl>::ParseYieldExpression() {
3081 template <typename Impl>
3082 typename ParserBase<Impl>::ExpressionT
3083 ParserBase<Impl>::ParseConditionalExpression() {
3095 template <typename Impl>
3096 typename ParserBase<Impl>::ExpressionT
3097 ParserBase<Impl>::ParseLogicalExpression() {
3115 template <typename Impl>
3116 typename ParserBase<Impl>::ExpressionT
3117 ParserBase<Impl>::ParseCoalesceExpression(ExpressionT expression) {
3152 template <typename Impl>
3153 typename ParserBase<Impl>::ExpressionT
3154 ParserBase<Impl>::ParseConditionalContinuation(ExpressionT expression,
3180 template <typename Impl>
3181 typename ParserBase<Impl>::ExpressionT
3182 ParserBase<Impl>::ParseBinaryContinuation(ExpressionT x, int prec, int prec1) {
3232 template <typename Impl>
3233 typename ParserBase<Impl>::ExpressionT ParserBase<Impl>::ParseBinaryExpression(
3258 template <typename Impl>
3259 typename ParserBase<Impl>::ExpressionT
3260 ParserBase<Impl>::ParseUnaryOrPrefixExpression() {
3316 template <typename Impl>
3317 typename ParserBase<Impl>::ExpressionT
3318 ParserBase<Impl>::ParseAwaitExpression() {
3347 template <typename Impl>
3348 typename ParserBase<Impl>::ExpressionT
3349 ParserBase<Impl>::ParseUnaryExpression() {
3371 template <typename Impl>
3372 typename ParserBase<Impl>::ExpressionT
3373 ParserBase<Impl>::ParsePostfixExpression() {
3386 template <typename Impl>
3387 typename ParserBase<Impl>::ExpressionT
3388 ParserBase<Impl>::ParsePostfixContinuation(ExpressionT expression,
3405 template <typename Impl>
3406 typename ParserBase<Impl>::ExpressionT
3407 ParserBase<Impl>::ParseLeftHandSideExpression() {
3416 template <typename Impl>
3417 typename ParserBase<Impl>::ExpressionT
3418 ParserBase<Impl>::ParseLeftHandSideContinuation(ExpressionT result) {
3565 template <typename Impl>
3566 typename ParserBase<Impl>::ExpressionT
3567 ParserBase<Impl>::ParseMemberWithPresentNewPrefixesExpression() {
3634 template <typename Impl>
3635 typename ParserBase<Impl>::ExpressionT
3636 ParserBase<Impl>::ParseFunctionExpression() {
3671 template <typename Impl>
3672 typename ParserBase<Impl>::ExpressionT
3673 ParserBase<Impl>::ParseMemberExpression() {
3691 template <typename Impl>
3692 typename ParserBase<Impl>::ExpressionT
3693 ParserBase<Impl>::ParseImportExpressions() {
3748 template <typename Impl>
3749 typename ParserBase<Impl>::ExpressionT
3750 ParserBase<Impl>::ParseSuperExpression() {
3792 template <typename Impl>
3793 typename ParserBase<Impl>::ExpressionT
3794 ParserBase<Impl>::ParseNewTargetExpression() {
3809 template <typename Impl>
3810 typename ParserBase<Impl>::ExpressionT
3811 ParserBase<Impl>::DoParseMemberExpressionContinuation(ExpressionT expression) {
3855 template <typename Impl>
3856 void ParserBase<Impl>::ParseFormalParameter(FormalParametersT* parameters) {
3905 template <typename Impl>
3906 void ParserBase<Impl>::ParseFormalParameterList(FormalParametersT* parameters) {
3951 template <typename Impl>
3952 void ParserBase<Impl>::ParseVariableDeclarations(
4119 template <typename Impl>
4120 typename ParserBase<Impl>::StatementT
4121 ParserBase<Impl>::ParseFunctionDeclaration() {
4135 template <typename Impl>
4136 typename ParserBase<Impl>::StatementT
4137 ParserBase<Impl>::ParseHoistableDeclaration(
4149 template <typename Impl>
4150 typename ParserBase<Impl>::StatementT
4151 ParserBase<Impl>::ParseHoistableDeclaration(
4224 template <typename Impl>
4225 typename ParserBase<Impl>::StatementT ParserBase<Impl>::ParseClassDeclaration(
4269 template <typename Impl>
4270 typename ParserBase<Impl>::StatementT
4271 ParserBase<Impl>::ParseNativeDeclaration() {
4289 template <typename Impl>
4290 typename ParserBase<Impl>::StatementT
4291 ParserBase<Impl>::ParseAsyncFunctionDeclaration(
4307 template <typename Impl>
4308 void ParserBase<Impl>::ParseFunctionBody(
4441 template <typename Impl>
4442 void ParserBase<Impl>::CheckArityRestrictions(int param_count,
4468 template <typename Impl>
4469 bool ParserBase<Impl>::IsNextLetKeyword() {
4501 template <typename Impl>
4502 typename ParserBase<Impl>::ExpressionT
4503 ParserBase<Impl>::ParseArrowFunctionLiteral(
4506 Impl::IsPreParser()
4669 template <typename Impl>
4670 typename ParserBase<Impl>::ExpressionT ParserBase<Impl>::ParseClassExpression(
4687 template <typename Impl>
4688 typename ParserBase<Impl>::ExpressionT ParserBase<Impl>::ParseClassLiteral(
4837 template <typename Impl>
4838 void ParserBase<Impl>::ParseAsyncFunctionBody(Scope* scope,
4851 template <typename Impl>
4852 typename ParserBase<Impl>::ExpressionT
4853 ParserBase<Impl>::ParseAsyncFunctionLiteral() {
4897 template <typename Impl>
4898 typename ParserBase<Impl>::ExpressionT ParserBase<Impl>::ParseTemplateLiteral(
4926 typename Impl::TemplateLiteralState ts = impl()->OpenTemplateLiteral(pos);
4934 typename Impl::TemplateLiteralState ts = impl()->OpenTemplateLiteral(pos);
4972 template <typename Impl>
4973 typename ParserBase<Impl>::ExpressionT
4974 ParserBase<Impl>::RewriteInvalidReferenceExpression(ExpressionT expression,
5009 template <typename Impl>
5010 void ParserBase<Impl>::ClassifyParameter(IdentifierT parameter, int begin,
5018 template <typename Impl>
5019 void ParserBase<Impl>::ClassifyArrowParameter(
5037 template <typename Impl>
5038 bool ParserBase<Impl>::IsValidReferenceExpression(ExpressionT expression) {
5042 template <typename Impl>
5043 typename ParserBase<Impl>::ExpressionT
5044 ParserBase<Impl>::ParsePossibleDestructuringSubPattern(
5080 template <typename Impl>
5081 typename ParserBase<Impl>::ExpressionT ParserBase<Impl>::ParseV8Intrinsic() {
5106 template <typename Impl>
5107 void ParserBase<Impl>::ParseStatementList(StatementListT* body,
5169 template <typename Impl>
5170 typename ParserBase<Impl>::StatementT
5171 ParserBase<Impl>::ParseStatementListItem() {
5216 template <typename Impl>
5217 typename ParserBase<Impl>::StatementT ParserBase<Impl>::ParseStatement(
5323 template <typename Impl>
5324 typename ParserBase<Impl>::BlockT ParserBase<Impl>::ParseBlock(
5362 template <typename Impl>
5363 typename ParserBase<Impl>::BlockT ParserBase<Impl>::ParseBlock(
5368 template <typename Impl>
5369 typename ParserBase<Impl>::StatementT ParserBase<Impl>::ParseScopedStatement(
5387 template <typename Impl>
5388 typename ParserBase<Impl>::StatementT ParserBase<Impl>::ParseVariableStatement(
5412 template <typename Impl>
5413 typename ParserBase<Impl>::StatementT
5414 ParserBase<Impl>::ParseDebuggerStatement() {
5427 template <typename Impl>
5428 typename ParserBase<Impl>::StatementT
5429 ParserBase<Impl>::ParseExpressionOrLabelledStatement(
5516 template <typename Impl>
5517 typename ParserBase<Impl>::StatementT ParserBase<Impl>::ParseIfStatement(
5555 template <typename Impl>
5556 typename ParserBase<Impl>::StatementT
5557 ParserBase<Impl>::ParseContinueStatement() {
5589 template <typename Impl>
5590 typename ParserBase<Impl>::StatementT ParserBase<Impl>::ParseBreakStatement(
5627 template <typename Impl>
5628 typename ParserBase<Impl>::StatementT ParserBase<Impl>::ParseReturnStatement() {
5678 template <typename Impl>
5679 typename ParserBase<Impl>::StatementT ParserBase<Impl>::ParseWithStatement(
5707 template <typename Impl>
5708 typename ParserBase<Impl>::StatementT ParserBase<Impl>::ParseDoWhileStatement(
5746 template <typename Impl>
5747 typename ParserBase<Impl>::StatementT ParserBase<Impl>::ParseWhileStatement(
5775 template <typename Impl>
5776 typename ParserBase<Impl>::StatementT ParserBase<Impl>::ParseThrowStatement() {
5795 template <typename Impl>
5796 typename ParserBase<Impl>::StatementT ParserBase<Impl>::ParseSwitchStatement(
5864 template <typename Impl>
5865 typename ParserBase<Impl>::StatementT ParserBase<Impl>::ParseTryStatement() {
5990 template <typename Impl>
5991 typename ParserBase<Impl>::StatementT ParserBase<Impl>::ParseForStatement(
6133 template <typename Impl>
6134 typename ParserBase<Impl>::StatementT
6135 ParserBase<Impl>::ParseForEachStatementWithDeclarations(
6216 template <typename Impl>
6217 typename ParserBase<Impl>::StatementT
6218 ParserBase<Impl>::ParseForEachStatementWithoutDeclarations(
6247 template <typename Impl>
6248 typename ParserBase<Impl>::StatementT
6249 ParserBase<Impl>::ParseStandardForLoopWithLexicalDeclarations(
6306 template <typename Impl>
6307 typename ParserBase<Impl>::ForStatementT ParserBase<Impl>::ParseStandardForLoop(
6336 template <typename Impl>
6337 typename ParserBase<Impl>::StatementT ParserBase<Impl>::ParseForAwaitStatement(
6487 template <typename Impl>
6488 void ParserBase<Impl>::CheckClassMethodName(IdentifierT name,
6524 template <typename Impl>
6525 void ParserBase<Impl>::CheckClassFieldName(IdentifierT name, bool is_static) {