Class CodeSnippetParser
java.lang.Object
org.aspectj.org.eclipse.jdt.internal.compiler.parser.Parser
org.aspectj.org.eclipse.jdt.internal.eval.CodeSnippetParser
- All Implemented Interfaces:
OperatorIds,TypeIds,ConflictedParser,ParserBasicInformation,TerminalTokens,EvaluationConstants
A parser for code snippets.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.parser.Parser
Parser.CaseLabelKind, Parser.IDeclarationFactory -
Field Summary
Fields inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.parser.Parser
annotationAsModifierSourceStart, annotationRecoveryActivated, asb, aspectIntPtr, aspectIntStack, asr, astLengthPtr, astLengthStack, astPtr, astStack, AstStackIncrement, base_action, BracketKinds, caseFlagSet, CASES_OMITTED_TAG, caseStartMap, check_table, checkExternalizeStrings, colonColonStart, compilationUnit, CurlyBracket, currentElement, currentToken, currentTokenStart, diet, dietInt, dimensions, endPosition, endStatementPosition, expressionLengthPtr, expressionLengthStack, expressionPtr, expressionStack, ExpressionStackIncrement, FALL_THROUGH_TAG, firstToken, forStartPosition, genericsIdentifiersLengthPtr, genericsIdentifiersLengthStack, genericsLengthPtr, genericsLengthStack, genericsPtr, genericsStack, GenericsStackIncrement, HALT, hasError, hasReportedError, identifierLengthPtr, identifierLengthStack, identifierPositionStack, identifierPtr, identifierStack, ignoreNextClosingBrace, ignoreNextOpeningBrace, in_symb, intPtr, intStack, javadoc, javadocParser, lastAct, lastCheckPoint, lastErrorEndPosition, lastErrorEndPositionBeforeRecovery, lastIgnoredToken, lastJavadocEnd, lastPosistion, lhs, listLength, listTypeParameterLength, lParenPos, methodRecoveryActivated, modifiers, modifiersSourceStart, name, nasb, nasr, nestedMethod, nestedType, nextIgnoredToken, nextTypeStart, non_terminal_index, optimizeStringLiterals, options, parsingJava11Plus, parsingJava14Plus, parsingJava15Plus, parsingJava17Plus, parsingJava18Plus, parsingJava21Plus, parsingJava22Plus, parsingJava8Plus, parsingJava9Plus, pendingRecoveredType, previewEnabled, problemReporter, rBraceEnd, rBraceStart, rBraceSuccessorStart, rBracketPosition, readableName, readManager, realBlockPtr, realBlockStack, recordStringLiterals, recoveredStaticInitializerStart, recoveredTypePtr, recoveredTypes, recovery_templates, recovery_templates_index, recoveryScanner, referenceContext, reportOnlyOneSyntaxError, reportSyntaxErrorIsRequired, RESTART, restartRecovery, RESUME, reverse_index, rhs, RoundBracket, rParenPos, rules_compliance, scanner, scope_la, scope_lhs, scope_prefix, scope_rhs, scope_state, scope_state_set, scope_suffix, SquareBracket, stack, StackIncrement, statementRecoveryActivated, statements_recovery_filter, stateStackTop, SUPER_CALL, switchNestingLevel, switchWithTry, synchronizedBlockSourceStart, term_action, term_check, terminal_index, THIS_CALL, typeAnnotationLengthPtr, typeAnnotationLengthStack, typeAnnotationPtr, typeAnnotationStack, TypeAnnotationStackIncrement, unstackedAct, valueLambdaNestDepth, variablesCounter, VERBOSE_RECOVERYFields inherited from interface org.aspectj.org.eclipse.jdt.internal.eval.EvaluationConstants
CODE_SNIPPET_CLASS_NAME_PREFIX, CODE_SNIPPET_NAME, DELEGATE_THIS, GLOBAL_VARS_CLASS_NAME_PREFIX, LOCAL_VAR_PREFIX, PACKAGE_NAME, RESULT_TYPE_FIELD, RESULT_VALUE_FIELD, ROOT_CLASS_NAME, ROOT_COMPOUND_NAME, ROOT_FULL_CLASS_NAME, RUN_METHOD, SETRESULT_ARGUMENTS, SETRESULT_SELECTORFields inherited from interface org.aspectj.org.eclipse.jdt.internal.compiler.ast.OperatorIds
AND, AND_AND, DIVIDE, EQUAL, EQUAL_EQUAL, GREATER, GREATER_EQUAL, INSTANCEOF, LEFT_SHIFT, LESS, LESS_EQUAL, MINUS, MINUS_MINUS, MULTIPLY, NOT, NOT_EQUAL, OR, OR_OR, PLUS, PLUS_PLUS, QUESTIONCOLON, REMAINDER, RIGHT_SHIFT, TWIDDLE, UNSIGNED_RIGHT_SHIFT, XORFields inherited from interface org.aspectj.org.eclipse.jdt.internal.compiler.parser.ParserBasicInformation
ACCEPT_ACTION, EOFT_SYMBOL, EOLT_SYMBOL, ERROR_ACTION, ERROR_SYMBOL, LA_STATE_OFFSET, MAX_LA, MAX_NAME_LENGTH, NT_OFFSET, NUM_NON_TERMINALS, NUM_RULES, NUM_STATES, NUM_SYMBOLS, NUM_TERMINALS, SCOPE_SIZE, SCOPE_UBOUND, START_STATEFields inherited from interface org.aspectj.org.eclipse.jdt.internal.compiler.parser.TerminalTokens
TokenNameabstract, TokenNameafter, TokenNameAND, TokenNameAND_AND, TokenNameAND_EQUAL, TokenNamearound, TokenNameARROW, TokenNameaspect, TokenNameassert, TokenNameAT, TokenNameAT308, TokenNameAT308DOTDOTDOT, TokenNamebefore, TokenNameBeginCaseElement, TokenNameBeginCaseExpr, TokenNameBeginIntersectionCast, TokenNameBeginLambda, TokenNameBeginTypeArguments, TokenNameboolean, TokenNamebreak, TokenNamebyte, TokenNamecase, TokenNamecatch, TokenNamechar, TokenNameCharacterLiteral, TokenNameclass, TokenNameCOLON, TokenNameCOLON_COLON, TokenNameCOMMA, TokenNameCOMMENT_BLOCK, TokenNameCOMMENT_JAVADOC, TokenNameCOMMENT_LINE, TokenNameconst, TokenNamecontinue, TokenNamedeclare, TokenNamedefault, TokenNameDIVIDE, TokenNameDIVIDE_EQUAL, TokenNamedo, TokenNameDOT, TokenNamedouble, TokenNameDoubleLiteral, TokenNameElidedSemicolonAndRightBrace, TokenNameELLIPSIS, TokenNameelse, TokenNameenum, TokenNameEOF, TokenNameEQUAL, TokenNameEQUAL_EQUAL, TokenNameERROR, TokenNameexports, TokenNameextends, TokenNamefalse, TokenNamefinal, TokenNamefinally, TokenNamefloat, TokenNameFloatingPointLiteral, TokenNamefor, TokenNamegoto, TokenNameGREATER, TokenNameGREATER_EQUAL, TokenNameIdentifier, TokenNameif, TokenNameimplements, TokenNameimport, TokenNameinstanceof, TokenNameint, TokenNameIntegerLiteral, TokenNameinterface, TokenNameLBRACE, TokenNameLBRACKET, TokenNameLEFT_SHIFT, TokenNameLEFT_SHIFT_EQUAL, TokenNameLESS, TokenNameLESS_EQUAL, TokenNamelong, TokenNameLongLiteral, TokenNameLPAREN, TokenNameMINUS, TokenNameMINUS_EQUAL, TokenNameMINUS_MINUS, TokenNamemodule, TokenNameMULTIPLY, TokenNameMULTIPLY_EQUAL, TokenNamenative, TokenNamenew, TokenNamenon_sealed, TokenNameNOT, TokenNameNOT_EQUAL, TokenNameNotAToken, TokenNamenull, TokenNameopen, TokenNameopens, TokenNameOR, TokenNameOR_EQUAL, TokenNameOR_OR, TokenNamepackage, TokenNamePLUS, TokenNamePLUS_EQUAL, TokenNamePLUS_PLUS, TokenNamepointcut, TokenNameprivate, TokenNameprivileged, TokenNameprotected, TokenNameprovides, TokenNamepublic, TokenNameQUESTION, TokenNameRBRACE, TokenNameRBRACKET, TokenNameREMAINDER, TokenNameREMAINDER_EQUAL, TokenNamerequires, TokenNameRestrictedIdentifierpermits, TokenNameRestrictedIdentifierrecord, TokenNameRestrictedIdentifiersealed, TokenNameRestrictedIdentifierWhen, TokenNameRestrictedIdentifierYield, TokenNamereturn, TokenNameRIGHT_SHIFT, TokenNameRIGHT_SHIFT_EQUAL, TokenNameRPAREN, TokenNameSEMICOLON, TokenNameshort, TokenNameSingleQuoteStringLiteral, TokenNamestatic, TokenNamestrictfp, TokenNameStringLiteral, TokenNameStringTemplate, TokenNamesuper, TokenNameswitch, TokenNamesynchronized, TokenNameTextBlock, TokenNameTextBlockTemplate, TokenNamethis, TokenNamethrow, TokenNamethrows, TokenNameto, TokenNametransient, TokenNametransitive, TokenNametrue, TokenNametry, TokenNameTWIDDLE, TokenNameUNDERSCORE, TokenNameUNSIGNED_RIGHT_SHIFT, TokenNameUNSIGNED_RIGHT_SHIFT_EQUAL, TokenNameuses, TokenNamevoid, TokenNamevolatile, TokenNamewhile, TokenNameWHITESPACE, TokenNamewith, TokenNameXOR, TokenNameXOR_EQUALFields inherited from interface org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeIds
BitAnyNullAnnotation, BitAutoCloseable, BitCloseable, BitCollection, BitList, BitMap, BitNonNullAnnotation, BitNonNullByDefaultAnnotation, BitNotOwningAnnotation, BitNullableAnnotation, BitOwningAnnotation, BitResourceFreeCloseable, BitUninitialized, BitUninternedType, BitWrapperCloseable, Boolean2Boolean, Boolean2Int, Boolean2String, BOXING, Byte2Byte, Byte2Char, Byte2Double, Byte2Float, Byte2Int, Byte2Long, Byte2Short, Byte2String, Char2Byte, Char2Char, Char2Double, Char2Float, Char2Int, Char2Long, Char2Short, Char2String, COMPILE_TYPE_MASK, Double2Byte, Double2Char, Double2Double, Double2Float, Double2Int, Double2Long, Double2Short, Double2String, Float2Byte, Float2Char, Float2Double, Float2Float, Float2Int, Float2Long, Float2Short, Float2String, IMPLICIT_CONVERSION_MASK, InheritableBits, Int2Byte, Int2Char, Int2Double, Int2Float, Int2Int, Int2Long, Int2Short, Int2String, Long2Byte, Long2Char, Long2Double, Long2Float, Long2Int, Long2Long, Long2Short, Long2String, NoId, Null2Null, Null2String, Object2boolean, Object2byte, Object2char, Object2double, Object2float, Object2int, Object2long, Object2Object, Object2short, Object2String, Short2Byte, Short2Char, Short2Double, Short2Float, Short2Int, Short2Long, Short2Short, Short2String, String2String, T_boolean, T_byte, T_char, T_ComGoogleCommonBasePreconditions, T_ComGoogleInjectInject, T_double, T_float, T_int, T_JavaIoException, T_JavaIoExternalizable, T_JavaIoObjectStreamException, T_JavaIoPrintStream, T_JavaIoSerializable, T_JavaLangAnnotationAnnotation, T_JavaLangAnnotationDocumented, T_JavaLangAnnotationElementType, T_JavaLangAnnotationInherited, T_JavaLangAnnotationRepeatable, T_JavaLangAnnotationRetention, T_JavaLangAnnotationRetentionPolicy, T_JavaLangAnnotationTarget, T_JavaLangAssertionError, T_JavaLangAutoCloseable, T_JavaLangBoolean, T_JavaLangByte, T_JavaLangCharacter, T_JavaLangClass, T_JavaLangClassNotFoundException, T_JavaLangCloneable, T_JavaLangDeprecated, T_JavaLangDouble, T_JavaLangEnum, T_JavaLangError, T_JavaLangException, T_JavaLangFloat, T_JavaLangFunctionalInterface, T_JavaLangIllegalArgumentException, T_JavaLangInteger, T_JavaLangInvokeMethodHandlePolymorphicSignature, T_JavaLangIterable, T_JavaLangLong, T_JavaLangNoClassDefError, T_JavaLangObject, T_JavaLangOverride, T_JavaLangRecord, T_JavaLangReflectConstructor, T_JavaLangReflectField, T_JavaLangReflectMethod, T_JavaLangRuntimeException, T_JavaLangSafeVarargs, T_JavaLangShort, T_JavaLangString, T_JavaLangStringBuffer, T_JavaLangStringBuilder, T_JavaLangSuppressWarnings, T_JavaLangSystem, T_JavaLangThrowable, T_JavaLangVoid, T_JavaUtilCollection, T_JavaUtilIterator, T_JavaUtilList, T_JavaUtilMap, T_JavaUtilObjects, T_JavaxInjectInject, T_JdkInternalPreviewFeature, T_JunitFrameworkAssert, T_LastWellKnownTypeId, T_long, T_null, T_OrgApacheCommonsLang3Validate, T_OrgApacheCommonsLangValidate, T_OrgEclipseCoreRuntimeAssert, T_OrgJunitAssert, T_OrgJunitJupiterApiAssertions, T_OrgJunitJupiterParamsProviderMethodSource, T_OrgSpringframeworkBeansFactoryAnnotationAutowired, T_short, T_undefined, T_void, UNBOXING -
Constructor Summary
ConstructorsConstructorDescriptionCodeSnippetParser(ProblemReporter problemReporter, EvaluationContext evaluationContext, boolean optimizeStringLiterals, int codeSnippetStart, int codeSnippetEnd) Creates a new code snippet parser. -
Method Summary
Modifier and TypeMethodDescriptionprotected voidclassInstanceCreation(boolean alwaysQualified) protected voidprotected voidprotected voidprotected voidprotected voidprotected voidprotected voidconsumeFieldAccess(boolean isSuperAccess) protected voidprotected voidprotected voidprotected voidconsumeMethodDeclaration(boolean isNotAbstract, boolean isDefaultMethod) In case emulating local variables, wrap the (recovered) statements inside a try statement so as to achieve local state commiting (copy local vars back to fields).protected voidprotected voidprotected voidprotected voidprotected voidprotected voidprotected voidprotected voidprotected voidprotected voidprotected voidprotected voidprotected voidprotected voidprotected voidprotected voidprotected voidprotected voidprotected voidprotected voidconsumeStatementTry(boolean arg_0, boolean arg_1) protected voidprotected CompilationUnitDeclarationendParse(int act) protected NameReferencegetUnspecifiedReference(boolean rejectTypeAnnotations) protected NameReferenceprotected voidprotected MessageSendprotected MessageSendprotected voidreportSyntaxErrors(boolean isDietParse, int oldFirstToken) protected intMethods inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.parser.Parser
actFromTokenOrSynthetic, annotateTypeReference, annotationRecoveryCheckPoint, arrayInitializer, asi, atConflictScenario, augmentTypeWithAdditionalDimensions, automatonState, automatonWillShift, automatonWillShift, base_check, blockReal, buildFilesFromLPG, buildInitialRecoveryState, checkAndSetModifiers, checkComment, checkForDiamond, checkNonNLSAfterBodyEnd, collectResultExpressionsYield, computeQualifiedGenericsFromRightSide, computeReverseTable, concatExpressionLists, concatGenericsLists, concatNodeLists, consumeAdditionalBound, consumeAdditionalBound1, consumeAdditionalBoundList, consumeAdditionalBoundList1, consumeAllocationHeader, consumeAnnotationAsModifier, consumeAnnotationName, consumeAnnotationTypeDeclaration, consumeAnnotationTypeDeclarationHeader, consumeAnnotationTypeDeclarationHeaderName, consumeAnnotationTypeDeclarationHeaderNameWithTypeParameters, consumeAnnotationTypeMemberDeclaration, consumeAnnotationTypeMemberDeclarations, consumeAnnotationTypeMemberDeclarationsopt, consumeArgumentList, consumeArguments, consumeAroundDeclaration, consumeAroundHeader, consumeAroundHeaderName, consumeArrayAccess, consumeArrayCreationExpressionWithInitializer, consumeArrayCreationExpressionWithoutInitializer, consumeArrayCreationHeader, consumeArrayInitializer, consumeArrayTypeWithTypeArgumentsName, consumeAspectDeclaration, consumeAspectHeader, consumeAspectHeaderName, consumeAspectHeaderNameWithTypeParameters, consumeAspectHeaderRest, consumeAssertStatement, consumeAssignment, consumeAssignmentOperator, consumeBasicAdviceDeclaration, consumeBasicAdviceHeader, consumeBasicAdviceHeaderName, consumeBinaryExpression, consumeBinaryExpressionWithName, consumeBlock, consumeBlockStatement, consumeBlockStatements, consumeBracketedTypeElidedUnderscoreLambdaParameter, consumeCaseLabel, consumeCaseLabelElement, consumeCaseLabelElements, consumeCaseLabelExpr, consumeCastExpressionLL1, consumeCastExpressionLL1WithBounds, consumeCastExpressionWithGenericsArray, consumeCastExpressionWithNameArray, consumeCastExpressionWithPrimitiveType, consumeCastExpressionWithQualifiedGenericsArray, consumeCatches, consumeCatchFormalParameter, consumeCatchHeader, consumeCatchType, consumeClassBodyDeclaration, consumeClassBodyDeclarationInAspect, consumeClassBodyDeclarations, consumeClassBodyDeclarationsopt, consumeClassBodyopt, consumeClassHeader, consumeClassHeaderExtends, consumeClassHeaderImplements, consumeClassHeaderPermittedSubclasses, consumeClassInstanceCreationExpression, consumeClassInstanceCreationExpressionName, consumeClassInstanceCreationExpressionQualified, consumeClassInstanceCreationExpressionQualifiedWithTypeArguments, consumeClassOrInterface, consumeClassOrInterfaceName, consumeClassTypeElt, consumeClassTypeList, consumeCompactConstructorDeclaration, consumeCompactConstructorHeader, consumeCompactConstructorHeaderName, consumeCompactConstructorHeaderNameWithTypeParameters, consumeCompilationUnit, consumeConditionalExpression, consumeConditionalExpressionWithName, consumeConstantExpression, consumeConstructorBlockStatements, consumeConstructorBody, consumeConstructorDeclaration, consumeConstructorHeader, consumeConstructorHeaderName, consumeConstructorHeaderNameWithTypeParameters, consumeCreateInitializer, consumeDeclareAnnotation, consumeDeclareAnnotationHeader, consumeDeclareDeclaration, consumeDeclareHeader, consumeDefaultLabel, consumeDefaultLabelExpr, consumeDefaultModifiers, consumeDiet, consumeDims, consumeDimWithOrWithOutExpr, consumeDimWithOrWithOutExprs, consumeElidedLeftBraceAndReturn, consumeEmptyAnnotationTypeMemberDeclarationsopt, consumeEmptyArgumentListopt, consumeEmptyArguments, consumeEmptyArrayInitializer, consumeEmptyArrayInitializeropt, consumeEmptyBlockStatementsopt, consumeEmptyCatchesopt, consumeEmptyClassBodyDeclarationsopt, consumeEmptyDimsopt, consumeEmptyEnumDeclarations, consumeEmptyExpression, consumeEmptyForInitopt, consumeEmptyForUpdateopt, consumeEmptyInterfaceMemberDeclarationsopt, consumeEmptyInternalCompilationUnit, consumeEmptyMemberValueArrayInitializer, consumeEmptyMemberValuePairsopt, consumeEmptyMethodHeaderDefaultValue, consumeEmptyModuleStatementsOpt, consumeEmptyPointcutDeclaration, consumeEmptyRecordBodyDeclaration, consumeEmptySwitchBlock, consumeEmptyTypeArguments, consumeEmptyTypeDeclaration, consumeEnhancedForStatementHeader, consumeEnhancedForStatementHeaderInit, consumeEnterAnonymousClassBody, consumeEnterCompilationUnit, consumeEnterInstanceCreationArgumentList, consumeEnterMemberValue, consumeEnterMemberValueArrayInitializer, consumeEnterVariable, consumeEnumBodyNoConstants, consumeEnumBodyWithConstants, consumeEnumConstantHeader, consumeEnumConstantHeaderName, consumeEnumConstantNoClassBody, consumeEnumConstants, consumeEnumConstantWithClassBody, consumeEnumDeclaration, consumeEnumDeclarations, consumeEnumHeader, consumeEnumHeaderName, consumeEnumHeaderNameWithTypeParameters, consumeEqualityExpression, consumeEqualityExpressionWithName, consumeExitITDVariableWithInitializer, consumeExitITDVariableWithoutInitializer, consumeExitMemberValue, consumeExitTryBlock, consumeExitVariableWithInitialization, consumeExitVariableWithoutInitialization, consumeExplicitConstructorInvocation, consumeExplicitConstructorInvocationWithTypeArguments, consumeExplicitThisParameter, consumeExportsHeader, consumeExportsStatement, consumeExpression, consumeExtraParameterNoFormal, consumeExtraParameterWithFormal, consumeFieldDeclaration, consumeForceNoDiet, consumeForInit, consumeFormalParameter, consumeFormalParameterList, consumeFormalParameterListopt, consumeGenericType, consumeGenericTypeArrayType, consumeGenericTypeNameArrayType, consumeGenericTypeWithDiamond, consumeGuard, consumeIdentifierOrNew, consumeImportDeclaration, consumeImportDeclarations, consumeInsideCastExpression, consumeInsideCastExpressionLL1, consumeInsideCastExpressionLL1WithBounds, consumeInsideCastExpressionWithQualifiedGenerics, consumeInstanceOfClassic, consumeInstanceOfExpression, consumeInstanceOfExpressionWithName, consumeInstanceofPattern, consumeInterfaceDeclaration, consumeInterfaceHeader, consumeInterfaceHeaderExtends, consumeInterfaceHeaderName1, consumeInterfaceHeaderPermittedSubClassesAndSubInterfaces, consumeInterfaceMemberDeclarations, consumeInterfaceMemberDeclarationsopt, consumeInterfaceMethodDeclaration, consumeInterfaceType, consumeInterfaceTypeList, consumeInternalCompilationUnitWithModuleDeclaration, consumeInternalCompilationUnitWithPotentialUnnamedClass, consumeInterTypeConstructorDeclaration, consumeInterTypeConstructorHeader, consumeInterTypeConstructorHeaderName, consumeInterTypeFieldDeclaration, consumeInterTypeFieldHeader, consumeInterTypeMethodDeclaration, consumeInterTypeMethodHeader, consumeInterTypeMethodHeaderName, consumeInvalidAnnotationTypeDeclaration, consumeInvalidConstructorDeclaration, consumeInvalidConstructorDeclaration, consumeInvalidEnumDeclaration, consumeInvalidInterfaceDeclaration, consumeInvocationExpression, consumeLabel, consumeLambdaExpression, consumeLambdaHeader, consumeLeftParen, consumeLocalVariableDeclaration, consumeMarkerAnnotation, consumeMemberValueArrayInitializer, consumeMemberValueAsName, consumeMemberValuePair, consumeMemberValuePairs, consumeMemberValues, consumeMethodBody, consumeMethodHeader, consumeMethodHeaderDefaultValue, consumeMethodHeaderExtendedDims, consumeMethodHeaderName, consumeMethodHeaderNameWithTypeParameters, consumeMethodHeaderRightParen, consumeMethodHeaderThrowsClause, consumeMethodInvocationPrimary, consumeMethodInvocationPrimaryWithTypeArguments, consumeModifiers, consumeModifiers2, consumeModuleDeclaration, consumeModuleHeader, consumeModuleModifiers, consumeModuleStatements, consumeMultipleResources, consumeNameArrayType, consumeNestedLambda, consumeNestedMethod, consumeNestedType, consumeNonTypeUseName, consumeNormalAnnotation, consumeOneDimLoop, consumeOneMoreTypeAnnotation, consumeOnlySynchronized, consumeOnlyTypeArguments, consumeOnlyTypeArgumentsForCastExpression, consumeOpenBlock, consumeOpensHeader, consumeOpensStatement, consumePackageComment, consumePackageDeclaration, consumePackageDeclarationName, consumePackageDeclarationNameWithModifiers, consumePatternInsideInstanceof, consumePatternList, consumePatternListopt, consumePointcutDeclaration, consumePointcutDesignatorOnAdvice, consumePointcutDesignatorOnDeclaration, consumePointcutHeader, consumePostExpressionInIf, consumePostExpressionInSwitch, consumePostExpressionInWhile, consumePostfixExpression, consumePrimaryNoNewArray, consumePrimaryNoNewArrayArrayType, consumePrimaryNoNewArrayName, consumePrimaryNoNewArrayNameThis, consumePrimaryNoNewArrayPrimitiveArrayType, consumePrimaryNoNewArrayPrimitiveType, consumePrimaryNoNewArrayWithName, consumePrimitiveArrayType, consumePrimitiveType, consumeProvidesInterface, consumeProvidesStatement, consumePseudoToken, consumePseudoToken, consumePseudoTokenIdentifier, consumePseudoTokenIf, consumePseudoTokenLiteral, consumePseudoTokenModifier, consumePseudoTokenPrimitiveType, consumePseudoTokens, consumePushCombineModifiers, consumePushLeftBrace, consumePushModifiers, consumePushModifiersForHeader, consumePushPosition, consumePushRealModifiers, consumeQualifiedName, consumeQualifiedName, consumeQualifiedSuperReceiver, consumeRecordBody, consumeRecordBodyDeclaration, consumeRecordBodyDeclarations, consumeRecordComponent, consumeRecordComponentHeaderRightParen, consumeRecordComponents, consumeRecordComponentsopt, consumeRecordDeclaration, consumeRecordHeader, consumeRecordHeaderName1, consumeRecordHeaderNameWithTypeParameters, consumeRecordHeaderPart, consumeRecordPattern, consumeRecoveryMethodHeaderName, consumeRecoveryMethodHeaderNameWithTypeParameters, consumeReduceImports, consumeReferenceExpression, consumeReferenceExpressionGenericTypeForm, consumeReferenceExpressionPrimaryForm, consumeReferenceExpressionSuperForm, consumeReferenceExpressionTypeArgumentsAndTrunk, consumeReferenceExpressionTypeForm, consumeReferenceType, consumeReferenceType1, consumeReferenceType2, consumeReferenceType3, consumeRequiresStatement, consumeResourceAsFieldAccess, consumeResourceAsLocalVariable, consumeResourceAsLocalVariableDeclaration, consumeResourceAsThis, consumeResourceOptionalTrailingSemiColon, consumeResourceSpecification, consumeRestoreDiet, consumeRightParen, consumeRule, consumeServiceImplNameList, consumeSimpleAssertStatement, consumeSingleMemberAnnotation, consumeSingleMemberAnnotationMemberValue, consumeSinglePkgName, consumeSingleRequiresModuleName, consumeSingleResource, consumeSingleServiceImplName, consumeSingleStaticImportDeclarationName, consumeSingleTargetModuleName, consumeSingleTypeImportDeclarationName, consumeStatementExpressionList, consumeStatementYield, consumeStaticImportOnDemandDeclarationName, consumeStaticInitializer, consumeStaticOnly, consumeSwitchBlock, consumeSwitchBlockStatement, consumeSwitchBlockStatements, consumeSwitchExpression, consumeSwitchExprThrowDefaultArm, consumeSwitchLabelCaseLhs, consumeSwitchLabeledBlock, consumeSwitchLabeledExpression, consumeSwitchLabeledRule, consumeSwitchLabeledRules, consumeSwitchLabeledRuleToBlockStatement, consumeSwitchLabeledThrowStatement, consumeSwitchLabels, consumeTargetModuleList, consumeTargetModuleNameList, consumeTemplate, consumeTemplateExpressionWithName, consumeTemplateExpressionWithPrimary, consumeThrowExpression, consumeToken, consumeTypeAnnotation, consumeTypeArgument, consumeTypeArgumentList, consumeTypeArgumentList1, consumeTypeArgumentList2, consumeTypeArgumentList3, consumeTypeArgumentReferenceType1, consumeTypeArgumentReferenceType2, consumeTypeArguments, consumeTypeDeclarations, consumeTypeElidedLambdaParameter, consumeTypeHeaderNameWithTypeParameters, consumeTypeImportOnDemandDeclarationName, consumeTypeParameter1, consumeTypeParameter1WithExtends, consumeTypeParameter1WithExtendsAndBounds, consumeTypeParameterHeader, consumeTypeParameterList, consumeTypeParameterList1, consumeTypeParameters, consumeTypeParameterWithExtends, consumeTypeParameterWithExtendsAndBounds, consumeTypePattern, consumeTypeReferenceWithModifiersAndAnnotations, consumeUnannotatableQualifiedName, consumeUnaryExpression, consumeUnaryExpression, consumeUnionType, consumeUnionTypeAsClassType, consumeUnnamedClassBodyDeclarations, consumeUnnamedPattern, consumeUnnamedVariable, consumeUsesHeader, consumeUsesStatement, consumeVariableDeclaratorIdParameter, consumeVariableDeclarators, consumeVariableInitializers, consumeWildcard, consumeWildcard1, consumeWildcard1WithBounds, consumeWildcard2, consumeWildcard2WithBounds, consumeWildcard3, consumeWildcard3WithBounds, consumeWildcardBounds1Extends, consumeWildcardBounds1Super, consumeWildcardBounds2Extends, consumeWildcardBounds2Super, consumeWildcardBounds3Extends, consumeWildcardBounds3Super, consumeWildcardBoundsExtends, consumeWildcardBoundsSuper, consumeWildcardWithBounds, consumeWithClause, consumeZeroAdditionalBounds, consumeZeroTypeAnnotations, containsComment, convertToMethodDeclaration, copyState, createComponent, createFieldDeclaration, createIntersectionCastTypeReference, createJavadocParser, createLocalDeclaration, createStringLiteral, currentRecoveryType, dietParse, dispatchDeclarationInto, dispatchDeclarationIntoEnumDeclaration, dispatchDeclarationIntoRecordDeclaration, display, fetchNextToken, flushCommentsDefinedPriorTo, getAnnotationsOnDimensions, getAnnotationType, getCurrentTokenStart, getEmbeddedExpressionParser, getFirstToken, getJavaDocPositions, getMethodBodies, getNextCharacter, getTypeReference, getTypeReference, getTypeReferenceForGenericType, getUnspecifiedReference, goForBlockStatementsopt, goForBlockStatementsOrCatchHeader, goForClassBodyDeclarations, goForCompilationUnit, goForExpression, goForFieldDeclaration, goForGenericMethodDeclaration, goForHeaders, goForImportDeclaration, goForInitializer, goForMemberValue, goForMethodBody, goForPackageDeclaration, goForPackageDeclaration, goForRecordBodyDeclarations, goForTypeDeclaration, hasLeadingTagComment, ignoreNextClosingBrace, in_symbol, initialize, initialize, initializeScanner, initTables, isAssistParser, isIndirectlyInsideLambdaExpression, isParsingJava14, isParsingModuleDeclaration, jumpOverMethodBody, markEnclosingMemberWithLocalOrFunctionalType, markEnclosingMemberWithLocalType, moveRecoveryCheckpoint, nasi, newAllocationExpression, newReferenceExpression, ntAction, optimizedConcatNodeLists, original_state, parse, parse, parse, parse, parse, parse, parse, parseClassBodyDeclarations, parseEmbeddedExpression, parseExpression, parseLambdaExpression, parseMemberValue, parsePackageDeclaration, parseRecordBodyDeclarations, parseStatements, persistLineSeparatorPositions, popPointcutDesignator, popPseudoTokens, prepareForBlockStatements, problemReporter, pushIdentifier, pushIdentifier, pushIdentifier, pushOnAspectIntStack, pushOnAstLengthStack, pushOnAstStack, pushOnExpressionStack, pushOnExpressionStackLengthStack, pushOnGenericsIdentifiersLengthStack, pushOnGenericsLengthStack, pushOnGenericsStack, pushOnIntStack, pushOnRealBlockStack, pushOnTypeAnnotationLengthStack, pushOnTypeAnnotationStack, readByteTable, readLongTable, readNameTable, readReadableNameTable, readTable, recoverStatements, recoveryExitFromVariable, recoveryTokenCheck, rejectIllegalLeadingTypeAnnotations, resetModifiers, resetStacks, restartRecovery, resumeAfterRecovery, setMethodsFullRecovery, setStatementsRecovery, shouldTryToRecover, tAction, toString, typeElidedArgument, updateRecoveryState, updateSourceDeclarationParts, updateSourcePosition
-
Constructor Details
-
CodeSnippetParser
public CodeSnippetParser(ProblemReporter problemReporter, EvaluationContext evaluationContext, boolean optimizeStringLiterals, int codeSnippetStart, int codeSnippetEnd) Creates a new code snippet parser.
-
-
Method Details
-
classInstanceCreation
protected void classInstanceCreation(boolean alwaysQualified) - Overrides:
classInstanceCreationin classParser
-
consumeClassInstanceCreationExpressionWithTypeArguments
protected void consumeClassInstanceCreationExpressionWithTypeArguments()- Overrides:
consumeClassInstanceCreationExpressionWithTypeArgumentsin classParser
-
consumeClassDeclaration
protected void consumeClassDeclaration()- Overrides:
consumeClassDeclarationin classParser
-
consumeClassHeaderName1
protected void consumeClassHeaderName1()- Overrides:
consumeClassHeaderName1in classParser
-
consumeEmptyStatement
protected void consumeEmptyStatement()- Overrides:
consumeEmptyStatementin classParser
-
consumeEnhancedForStatement
protected void consumeEnhancedForStatement()- Overrides:
consumeEnhancedForStatementin classParser
-
consumeExpressionStatement
protected void consumeExpressionStatement()- Overrides:
consumeExpressionStatementin classParser
-
consumeFieldAccess
protected void consumeFieldAccess(boolean isSuperAccess) - Overrides:
consumeFieldAccessin classParser
-
consumeInternalCompilationUnit
protected void consumeInternalCompilationUnit()- Overrides:
consumeInternalCompilationUnitin classParser
-
consumeInternalCompilationUnitWithTypes
protected void consumeInternalCompilationUnitWithTypes()- Overrides:
consumeInternalCompilationUnitWithTypesin classParser
-
consumeLocalVariableDeclarationStatement
protected void consumeLocalVariableDeclarationStatement()- Overrides:
consumeLocalVariableDeclarationStatementin classParser
-
consumeMethodDeclaration
protected void consumeMethodDeclaration(boolean isNotAbstract, boolean isDefaultMethod) In case emulating local variables, wrap the (recovered) statements inside a try statement so as to achieve local state commiting (copy local vars back to fields). The CSToCuMapper could not be used, since it could have interfered with the syntax recovery specific to code snippets.- Overrides:
consumeMethodDeclarationin classParser
-
consumeMethodInvocationName
protected void consumeMethodInvocationName()- Overrides:
consumeMethodInvocationNamein classParser
-
consumeMethodInvocationNameWithTypeArguments
protected void consumeMethodInvocationNameWithTypeArguments()- Overrides:
consumeMethodInvocationNameWithTypeArgumentsin classParser
-
consumeMethodInvocationSuper
protected void consumeMethodInvocationSuper()- Overrides:
consumeMethodInvocationSuperin classParser
-
consumeMethodInvocationSuperWithTypeArguments
protected void consumeMethodInvocationSuperWithTypeArguments()- Overrides:
consumeMethodInvocationSuperWithTypeArgumentsin classParser
-
consumePrimaryNoNewArrayThis
protected void consumePrimaryNoNewArrayThis()- Overrides:
consumePrimaryNoNewArrayThisin classParser
-
consumeStatementBreak
protected void consumeStatementBreak()- Overrides:
consumeStatementBreakin classParser
-
consumeStatementBreakWithLabel
protected void consumeStatementBreakWithLabel()- Overrides:
consumeStatementBreakWithLabelin classParser
-
consumeStatementCatch
protected void consumeStatementCatch()- Overrides:
consumeStatementCatchin classParser
-
consumeStatementContinue
protected void consumeStatementContinue()- Overrides:
consumeStatementContinuein classParser
-
consumeStatementContinueWithLabel
protected void consumeStatementContinueWithLabel()- Overrides:
consumeStatementContinueWithLabelin classParser
-
consumeStatementDo
protected void consumeStatementDo()- Overrides:
consumeStatementDoin classParser
-
consumeStatementFor
protected void consumeStatementFor()- Overrides:
consumeStatementForin classParser
-
consumeStatementIfNoElse
protected void consumeStatementIfNoElse()- Overrides:
consumeStatementIfNoElsein classParser
-
consumeStatementIfWithElse
protected void consumeStatementIfWithElse()- Overrides:
consumeStatementIfWithElsein classParser
-
consumeStatementLabel
protected void consumeStatementLabel()- Overrides:
consumeStatementLabelin classParser
-
consumeStatementReturn
protected void consumeStatementReturn()- Overrides:
consumeStatementReturnin classParser
-
consumeStatementSwitch
protected void consumeStatementSwitch()- Overrides:
consumeStatementSwitchin classParser
-
consumeStatementSynchronized
protected void consumeStatementSynchronized()- Overrides:
consumeStatementSynchronizedin classParser
-
consumeStatementThrow
protected void consumeStatementThrow()- Overrides:
consumeStatementThrowin classParser
-
consumeStatementTry
protected void consumeStatementTry(boolean arg_0, boolean arg_1) - Overrides:
consumeStatementTryin classParser
-
consumeStatementWhile
protected void consumeStatementWhile()- Overrides:
consumeStatementWhilein classParser
-
endParse
-
getUnspecifiedReference
- Overrides:
getUnspecifiedReferencein classParser
-
getUnspecifiedReferenceOptimized
- Overrides:
getUnspecifiedReferenceOptimizedin classParser
-
ignoreExpressionAssignment
protected void ignoreExpressionAssignment()- Overrides:
ignoreExpressionAssignmentin classParser
-
newMessageSend
- Overrides:
newMessageSendin classParser
-
newMessageSendWithTypeArguments
- Overrides:
newMessageSendWithTypeArgumentsin classParser
-
reportSyntaxErrors
protected void reportSyntaxErrors(boolean isDietParse, int oldFirstToken) - Overrides:
reportSyntaxErrorsin classParser
-
resumeOnSyntaxError
protected int resumeOnSyntaxError()- Overrides:
resumeOnSyntaxErrorin classParser
-