| visitPattern(JavaLanguageParser.PatternContext) |   | 0% |   | 0% | 5 | 5 | 12 | 12 | 1 | 1 | 
| visitVariableAccess(JavaLanguageParser.VariableAccessContext) |   | 0% |   | 0% | 3 | 3 | 11 | 11 | 1 | 1 | 
| visitSuperSuffixDot(JavaLanguageParser.SuperSuffixDotContext) |    | 29% |    | 50% | 1 | 2 | 8 | 12 | 0 | 1 | 
| visitAnnotationMethodRest(JavaLanguageParser.AnnotationMethodRestContext) |   | 0% |  | n/a | 1 | 1 | 11 | 11 | 1 | 1 | 
| visitInstanceOfExp(JavaLanguageParser.InstanceOfExpContext) |   | 0% |   | 0% | 2 | 2 | 9 | 9 | 1 | 1 | 
| visitBracketsWithExp(JavaLanguageParser.BracketsWithExpContext) |   | 0% |  | n/a | 1 | 1 | 8 | 8 | 1 | 1 | 
| visitSwitchLabeledThrow(JavaLanguageParser.SwitchLabeledThrowContext) |   | 0% |  | n/a | 1 | 1 | 7 | 7 | 1 | 1 | 
| visitInitExp(JavaLanguageParser.InitExpContext) |   | 0% |  | n/a | 1 | 1 | 7 | 7 | 1 | 1 | 
| visitRecordComponentsList(JavaLanguageParser.RecordComponentsListContext) |   | 0% |   | 0% | 2 | 2 | 6 | 6 | 1 | 1 | 
| visitPrimitivePrimary(JavaLanguageParser.PrimitivePrimaryContext) |   | 0% |  | n/a | 1 | 1 | 6 | 6 | 1 | 1 | 
| visitVariableDeclaratorId(JavaLanguageParser.VariableDeclaratorIdContext) |    | 60% |    | 25% | 2 | 3 | 5 | 14 | 0 | 1 | 
| visitFormalLambdaParam(JavaLanguageParser.FormalLambdaParamContext) |   | 0% |  | n/a | 1 | 1 | 6 | 6 | 1 | 1 | 
| visitTypePatternDef(JavaLanguageParser.TypePatternDefContext) |   | 0% |  | n/a | 1 | 1 | 6 | 6 | 1 | 1 | 
| visitCompactConstructorDeclaration(JavaLanguageParser.CompactConstructorDeclarationContext) |   | 0% |  | n/a | 1 | 1 | 5 | 5 | 1 | 1 | 
| visitNonWildcardDiamond(JavaLanguageParser.NonWildcardDiamondContext) |   | 0% |  | n/a | 1 | 1 | 7 | 7 | 1 | 1 | 
| visitRecordPattern(JavaLanguageParser.RecordPatternContext) |   | 0% |  | n/a | 1 | 1 | 5 | 5 | 1 | 1 | 
| visitParenPattern(JavaLanguageParser.ParenPatternContext) |   | 0% |  | n/a | 1 | 1 | 5 | 5 | 1 | 1 | 
| visitTypeUpperBounds(JavaLanguageParser.TypeUpperBoundsContext) |   | 0% |  | n/a | 1 | 1 | 4 | 4 | 1 | 1 | 
| visitTypeBound(JavaLanguageParser.TypeBoundContext) |   | 0% |  | n/a | 1 | 1 | 5 | 5 | 1 | 1 | 
| visitPermittedSubclassesAndInterfaces(JavaLanguageParser.PermittedSubclassesAndInterfacesContext) |   | 0% |  | n/a | 1 | 1 | 4 | 4 | 1 | 1 | 
| visitTextBlockLiteral(JavaLanguageParser.TextBlockLiteralContext) |   | 0% |  | n/a | 1 | 1 | 4 | 4 | 1 | 1 | 
| visitEnhancedForControlWithRecordPattern(JavaLanguageParser.EnhancedForControlWithRecordPatternContext) |   | 0% |  | n/a | 1 | 1 | 5 | 5 | 1 | 1 | 
| visitGuardedPattern(JavaLanguageParser.GuardedPatternContext) |   | 0% |  | n/a | 1 | 1 | 4 | 4 | 1 | 1 | 
| visitMultiLambdaParams(JavaLanguageParser.MultiLambdaParamsContext) |    | 51% |    | 50% | 1 | 2 | 2 | 6 | 0 | 1 | 
| visitAssertExp(JavaLanguageParser.AssertExpContext) |   | 0% |  | n/a | 1 | 1 | 3 | 3 | 1 | 1 | 
| visitYieldStat(JavaLanguageParser.YieldStatContext) |   | 0% |  | n/a | 1 | 1 | 3 | 3 | 1 | 1 | 
| lambda$visitTypeBound$1(DetailAstImpl, Iterator, TerminalNode) |   | 0% |  | n/a | 1 | 1 | 4 | 4 | 1 | 1 | 
| visitWildCardTypeArgument(JavaLanguageParser.WildCardTypeArgumentContext) |    | 73% |    | 75% | 1 | 3 | 3 | 14 | 0 | 1 | 
| lambda$visitSwitchRules$12(DetailAstImpl, JavaLanguageParser.SwitchLabeledRuleContext) |   | 0% |  | n/a | 1 | 1 | 5 | 5 | 1 | 1 | 
| visitBitShift(JavaLanguageParser.BitShiftContext) |    | 80% |    | 75% | 1 | 3 | 2 | 11 | 0 | 1 | 
| visitClassExtends(JavaLanguageParser.ClassExtendsContext) |   | 0% |  | n/a | 1 | 1 | 3 | 3 | 1 | 1 | 
| visitInterfaceExtends(JavaLanguageParser.InterfaceExtendsContext) |   | 0% |  | n/a | 1 | 1 | 3 | 3 | 1 | 1 | 
| visitDefaultValue(JavaLanguageParser.DefaultValueContext) |   | 0% |  | n/a | 1 | 1 | 3 | 3 | 1 | 1 | 
| visitSwitchRules(JavaLanguageParser.SwitchRulesContext) |   | 0% |  | n/a | 1 | 1 | 3 | 3 | 1 | 1 | 
| lambda$visitVariableAccess$16(JavaAstVisitor.DetailAstPair, JavaLanguageParser.FieldAccessNoIdentContext) |   | 0% |  | n/a | 1 | 1 | 3 | 3 | 1 | 1 | 
| visitSwitchBlocks(JavaLanguageParser.SwitchBlocksContext) |    | 58% |    | 50% | 1 | 2 | 4 | 8 | 0 | 1 | 
| visitRecordComponents(JavaLanguageParser.RecordComponentsContext) |   | 0% |  | n/a | 1 | 1 | 3 | 3 | 1 | 1 | 
| visitRecordComponent(JavaLanguageParser.RecordComponentContext) |   | 0% |  | n/a | 1 | 1 | 3 | 3 | 1 | 1 | 
| visitLastRecordComponent(JavaLanguageParser.LastRecordComponentContext) |   | 0% |  | n/a | 1 | 1 | 3 | 3 | 1 | 1 | 
| visitRecordBody(JavaLanguageParser.RecordBodyContext) |   | 0% |  | n/a | 1 | 1 | 3 | 3 | 1 | 1 | 
| visitElementValuePair(JavaLanguageParser.ElementValuePairContext) |   | 0% |  | n/a | 1 | 1 | 4 | 4 | 1 | 1 | 
| visitRecordComponentPatternList(JavaLanguageParser.RecordComponentPatternListContext) |   | 0% |  | n/a | 1 | 1 | 4 | 4 | 1 | 1 | 
| visitImportDec(JavaLanguageParser.ImportDecContext) |    | 87% |    | 83% | 1 | 4 | 2 | 15 | 0 | 1 | 
| visitClassRefPrimary(JavaLanguageParser.ClassRefPrimaryContext) |    | 83% |    | 50% | 1 | 2 | 2 | 10 | 0 | 1 | 
| visitFloatLiteral(JavaLanguageParser.FloatLiteralContext) |    | 76% |    | 50% | 1 | 2 | 1 | 4 | 0 | 1 | 
| visitRecordDeclaration(JavaLanguageParser.RecordDeclarationContext) |   | 0% |  | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 
| lambda$visitAnnotationMethodRest$9(ParseTree) |   | 0% |   | 0% | 2 | 2 | 1 | 1 | 1 | 1 | 
| visitUnnamedPatternDef(JavaLanguageParser.UnnamedPatternDefContext) |   | 0% |  | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 
| lambda$visitPrimitivePrimary$25(DetailAstImpl, JavaLanguageParser.ArrayDeclaratorContext) |   | 0% |  | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 
| lambda$visitClassRefPrimary$24(DetailAstImpl, JavaLanguageParser.ArrayDeclaratorContext) |   | 0% |  | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 
| lambda$visitClassRefPrimary$23(DetailAstImpl, JavaLanguageParser.ArrayDeclaratorContext) |   | 0% |  | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 
| lambda$visitSwitchBlocks$14(DetailAstImpl, JavaLanguageParser.SwitchLabelContext) |   | 0% |  | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 
| lambda$visitAnnotationMethodRest$10(DetailAstImpl, JavaLanguageParser.ArrayDeclaratorContext) |   | 0% |  | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 
| lambda$visitVariableDeclaratorId$7(DetailAstImpl, JavaLanguageParser.ArrayDeclaratorContext) |   | 0% |  | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 
| lambda$visitInterfaceMethodDeclaration$5(DetailAstImpl, JavaLanguageParser.ArrayDeclaratorContext) |   | 0% |  | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 
| lambda$visitMethodDeclaration$3(DetailAstImpl, JavaLanguageParser.ArrayDeclaratorContext) |   | 0% |  | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 
| lambda$visitTypeDeclaration$0(DetailAstImpl, Token) |   | 0% |  | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 
| visitInterfaceBodyDeclaration(JavaLanguageParser.InterfaceBodyDeclarationContext) |    | 68% |    | 50% | 1 | 2 | 1 | 4 | 0 | 1 | 
| visitTypeBoundType(JavaLanguageParser.TypeBoundTypeContext) |   | 0% |  | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 
| visitElementValuePairs(JavaLanguageParser.ElementValuePairsContext) |   | 0% |  | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 
| visitSwitchLabeledExpression(JavaLanguageParser.SwitchLabeledExpressionContext) |   | 0% |  | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 
| visitSwitchLabeledBlock(JavaLanguageParser.SwitchLabeledBlockContext) |   | 0% |  | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 
| visitInnerCreator(JavaLanguageParser.InnerCreatorContext) |   | 0% |  | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 
| visitInnerPattern(JavaLanguageParser.InnerPatternContext) |   | 0% |  | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 
| visitRecordPatternDef(JavaLanguageParser.RecordPatternDefContext) |   | 0% |  | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 
| lambda$visitSuperSuffixDot$26() |   | 0% |  | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 
| lambda$visitFormalLambdaParam$22() |   | 0% |  | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 
| lambda$visitCatchParameter$15(ParseTree) |    | 85% |    | 50% | 1 | 2 | 0 | 1 | 0 | 1 | 
| lambda$visitInterfaceMethodDeclaration$4(ParseTree) |    | 85% |    | 50% | 1 | 2 | 0 | 1 | 0 | 1 | 
| lambda$visitMethodDeclaration$2(ParseTree) |    | 85% |    | 50% | 1 | 2 | 0 | 1 | 0 | 1 | 
| visitBinOp(JavaLanguageParser.BinOpContext) |   | 100% |   | 100% | 0 | 4 | 0 | 21 | 0 | 1 | 
| visitForFor(JavaLanguageParser.ForForContext) |   | 100% |   | 100% | 0 | 2 | 0 | 18 | 0 | 1 | 
| visitInvOp(JavaLanguageParser.InvOpContext) |   | 100% |  | n/a | 0 | 1 | 0 | 15 | 0 | 1 | 
| visitClassOrInterfaceType(JavaLanguageParser.ClassOrInterfaceTypeContext) |   | 100% |   | 100% | 0 | 3 | 0 | 14 | 0 | 1 | 
| visitArrayCreatorRest(JavaLanguageParser.ArrayCreatorRestContext) |   | 100% |   | 100% | 0 | 4 | 0 | 11 | 0 | 1 | 
| visitCreatedNameObject(JavaLanguageParser.CreatedNameObjectContext) |   | 100% |   | 100% | 0 | 2 | 0 | 12 | 0 | 1 | 
| visitMethodCall(JavaLanguageParser.MethodCallContext) |   | 100% |  | n/a | 0 | 1 | 0 | 11 | 0 | 1 | 
| visitVariableDeclarator(JavaLanguageParser.VariableDeclaratorContext) |   | 100% |   | 100% | 0 | 2 | 0 | 12 | 0 | 1 | 
| visitQualifiedName(JavaLanguageParser.QualifiedNameContext) |   | 100% |   | 100% | 0 | 2 | 0 | 11 | 0 | 1 | 
| visitTypeArgumentsTypeList(JavaLanguageParser.TypeArgumentsTypeListContext) |   | 100% |   | 100% | 0 | 2 | 0 | 10 | 0 | 1 | 
| visitSuperExp(JavaLanguageParser.SuperExpContext) |   | 100% |   | 100% | 0 | 3 | 0 | 11 | 0 | 1 | 
| visitExplicitCtorCall(JavaLanguageParser.ExplicitCtorCallContext) |   | 100% |   | 100% | 0 | 2 | 0 | 7 | 0 | 1 | 
| visitIndexOp(JavaLanguageParser.IndexOpContext) |   | 100% |  | n/a | 0 | 1 | 0 | 9 | 0 | 1 | 
| visitIntegerLiteral(JavaLanguageParser.IntegerLiteralContext) |   | 100% |   | 100% | 0 | 2 | 0 | 5 | 0 | 1 | 
| visitSimpleMethodCall(JavaLanguageParser.SimpleMethodCallContext) |   | 100% |  | n/a | 0 | 1 | 0 | 8 | 0 | 1 | 
| visitTypeCastParameters(JavaLanguageParser.TypeCastParametersContext) |   | 100% |   | 100% | 0 | 2 | 0 | 6 | 0 | 1 | 
| visitTypeParameters(JavaLanguageParser.TypeParametersContext) |   | 100% |  | n/a | 0 | 1 | 0 | 5 | 0 | 1 | 
| visitTypeArguments(JavaLanguageParser.TypeArgumentsContext) |   | 100% |  | n/a | 0 | 1 | 0 | 5 | 0 | 1 | 
| visitDoStat(JavaLanguageParser.DoStatContext) |   | 100% |  | n/a | 0 | 1 | 0 | 6 | 0 | 1 | 
| create(Token) |   | 100% |   | 100% | 0 | 3 | 0 | 12 | 0 | 1 | 
| visitInterfaceMethodDeclaration(JavaLanguageParser.InterfaceMethodDeclarationContext) |   | 100% |  | n/a | 0 | 1 | 0 | 10 | 0 | 1 | 
| visitLastFormalParameter(JavaLanguageParser.LastFormalParameterContext) |   | 100% |  | n/a | 0 | 1 | 0 | 8 | 0 | 1 | 
| visitCompilationUnit(JavaLanguageParser.CompilationUnitContext) |   | 100% |   | 100% | 0 | 3 | 0 | 6 | 0 | 1 | 
| visitMethodDeclaration(JavaLanguageParser.MethodDeclarationContext) |   | 100% |  | n/a | 0 | 1 | 0 | 8 | 0 | 1 | 
| visitSwitchExpressionOrStatement(JavaLanguageParser.SwitchExpressionOrStatementContext) |   | 100% |  | n/a | 0 | 1 | 0 | 6 | 0 | 1 | 
| visitLambdaExp(JavaLanguageParser.LambdaExpContext) |   | 100% |   | 100% | 0 | 2 | 0 | 8 | 0 | 1 | 
| visitArrayDeclarator(JavaLanguageParser.ArrayDeclaratorContext) |   | 100% |   | 100% | 0 | 2 | 0 | 9 | 0 | 1 | 
| visitTypeDeclaration(JavaLanguageParser.TypeDeclarationContext) |   | 100% |   | 100% | 0 | 2 | 0 | 6 | 0 | 1 | 
| visitNonWildcardTypeArguments(JavaLanguageParser.NonWildcardTypeArgumentsContext) |   | 100% |  | n/a | 0 | 1 | 0 | 5 | 0 | 1 | 
| visitPackageDeclaration(JavaLanguageParser.PackageDeclarationContext) |   | 100% |  | n/a | 0 | 1 | 0 | 6 | 0 | 1 | 
| visitEnhancedFor(JavaLanguageParser.EnhancedForContext) |   | 100% |  | n/a | 0 | 1 | 0 | 8 | 0 | 1 | 
| visitClassBlock(JavaLanguageParser.ClassBlockContext) |   | 100% |   | 100% | 0 | 2 | 0 | 6 | 0 | 1 | 
| visitFormalParameters(JavaLanguageParser.FormalParametersContext) |   | 100% |   | 100% | 0 | 2 | 0 | 6 | 0 | 1 | 
| visitFieldDeclaration(JavaLanguageParser.FieldDeclarationContext) |   | 100% |  | n/a | 0 | 1 | 0 | 4 | 0 | 1 | 
| visitPrefix(JavaLanguageParser.PrefixContext) |   | 100% |   | 100% | 0 | 3 | 0 | 7 | 0 | 1 | 
| visitPostfix(JavaLanguageParser.PostfixContext) |   | 100% |   | 100% | 0 | 2 | 0 | 5 | 0 | 1 | 
| getInnerBopAst(JavaLanguageParser.BinOpContext) |   | 100% |   | 100% | 0 | 2 | 0 | 6 | 0 | 1 | 
| visitResourceDeclaration(JavaLanguageParser.ResourceDeclarationContext) |   | 100% |  | n/a | 0 | 1 | 0 | 6 | 0 | 1 | 
| visitEnhancedForControl(JavaLanguageParser.EnhancedForControlContext) |   | 100% |  | n/a | 0 | 1 | 0 | 7 | 0 | 1 | 
| visitArguments(JavaLanguageParser.ArgumentsContext) |   | 100% |  | n/a | 0 | 1 | 0 | 6 | 0 | 1 | 
| visitResources(JavaLanguageParser.ResourcesContext) |   | 100% |  | n/a | 0 | 1 | 0 | 5 | 0 | 1 | 
| visitRefOp(JavaLanguageParser.RefOpContext) |   | 100% |  | n/a | 0 | 1 | 0 | 6 | 0 | 1 | 
| createLambdaParameter(JavaLanguageParser.IdContext) |   | 100% |  | n/a | 0 | 1 | 0 | 8 | 0 | 1 | 
| visitAnnotationField(JavaLanguageParser.AnnotationFieldContext) |   | 100% |  | n/a | 0 | 1 | 0 | 4 | 0 | 1 | 
| visitDiamond(JavaLanguageParser.DiamondContext) |   | 100% |  | n/a | 0 | 1 | 0 | 7 | 0 | 1 | 
| visitLabelStat(JavaLanguageParser.LabelStatContext) |   | 100% |  | n/a | 0 | 1 | 0 | 5 | 0 | 1 | 
| visitMethodRef(JavaLanguageParser.MethodRefContext) |   | 100% |  | n/a | 0 | 1 | 0 | 7 | 0 | 1 | 
| visitSwitchBlockStatementGroup(JavaLanguageParser.SwitchBlockStatementGroupContext) |   | 100% |  | n/a | 0 | 1 | 0 | 6 | 0 | 1 | 
| visitAnnotations(JavaLanguageParser.AnnotationsContext) |   | 100% |   | 100% | 0 | 3 | 0 | 5 | 0 | 1 | 
| visitElementValueArrayInitializer(JavaLanguageParser.ElementValueArrayInitializerContext) |   | 100% |  | n/a | 0 | 1 | 0 | 4 | 0 | 1 | 
| visitPrimaryCtorCall(JavaLanguageParser.PrimaryCtorCallContext) |   | 100% |  | n/a | 0 | 1 | 0 | 6 | 0 | 1 | 
| visitCatchClause(JavaLanguageParser.CatchClauseContext) |   | 100% |  | n/a | 0 | 1 | 0 | 4 | 0 | 1 | 
| visitCatchParameter(JavaLanguageParser.CatchParameterContext) |   | 100% |  | n/a | 0 | 1 | 0 | 6 | 0 | 1 | 
| visitCastExp(JavaLanguageParser.CastExpContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitThisExp(JavaLanguageParser.ThisExpContext) |   | 100% |  | n/a | 0 | 1 | 0 | 4 | 0 | 1 | 
| visitMultiLambdaParam(JavaLanguageParser.MultiLambdaParamContext) |   | 100% |  | n/a | 0 | 1 | 0 | 4 | 0 | 1 | 
| visitTypeType(JavaLanguageParser.TypeTypeContext) |   | 100% |   | 100% | 0 | 2 | 0 | 6 | 0 | 1 | 
| buildExpressionNode(ParseTree) |   | 100% |   | 100% | 0 | 2 | 0 | 6 | 0 | 1 | 
| visitArrayInitializer(JavaLanguageParser.ArrayInitializerContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitConstructorBlock(JavaLanguageParser.ConstructorBlockContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitBlock(JavaLanguageParser.BlockContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| lambda$processChildren$28(DetailAstImpl, ParseTree) |   | 100% |   | 100% | 0 | 2 | 0 | 4 | 0 | 1 | 
| visitIfStat(JavaLanguageParser.IfStatContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitForStat(JavaLanguageParser.ForStatContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitWhileStat(JavaLanguageParser.WhileStatContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitTryStat(JavaLanguageParser.TryStatContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitTryWithResourceStat(JavaLanguageParser.TryWithResourceStatContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitSyncStat(JavaLanguageParser.SyncStatContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitReturnStat(JavaLanguageParser.ReturnStatContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitThrowStat(JavaLanguageParser.ThrowStatContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitBreakStat(JavaLanguageParser.BreakStatContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitContinueStat(JavaLanguageParser.ContinueStatContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitElseStat(JavaLanguageParser.ElseStatContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitFinallyBlock(JavaLanguageParser.FinallyBlockContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitCaseLabel(JavaLanguageParser.CaseLabelContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitNewExp(JavaLanguageParser.NewExpContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitTernaryOp(JavaLanguageParser.TernaryOpContext) |   | 100% |  | n/a | 0 | 1 | 0 | 5 | 0 | 1 | 
| visitImplementsClause(JavaLanguageParser.ImplementsClauseContext) |   | 100% |  | n/a | 0 | 1 | 0 | 4 | 0 | 1 | 
| visitConstructorDeclaration(JavaLanguageParser.ConstructorDeclarationContext) |   | 100% |  | n/a | 0 | 1 | 0 | 4 | 0 | 1 | 
| visitAnnotationTypeElementDeclaration(JavaLanguageParser.AnnotationTypeElementDeclarationContext) |   | 100% |   | 100% | 0 | 2 | 0 | 4 | 0 | 1 | 
| visitDefaultLabel(JavaLanguageParser.DefaultLabelContext) |   | 100% |    | 50% | 1 | 2 | 0 | 4 | 0 | 1 | 
| static {...} |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| createTypeDeclaration(ParserRuleContext, int, List) |   | 100% |  | n/a | 0 | 1 | 0 | 4 | 0 | 1 | 
| addLastSibling(DetailAstImpl, DetailAstImpl) |   | 100% |    | 75% | 1 | 3 | 0 | 6 | 0 | 1 | 
| visitThrowsList(JavaLanguageParser.ThrowsListContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitFormalParameter(JavaLanguageParser.FormalParameterContext) |   | 100% |  | n/a | 0 | 1 | 0 | 5 | 0 | 1 | 
| visitExpStat(JavaLanguageParser.ExpStatContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| createImaginary(int) |   | 100% |  | n/a | 0 | 1 | 0 | 4 | 0 | 1 | 
| flattenedTree(ParserRuleContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitSimpleTypeArgument(JavaLanguageParser.SimpleTypeArgumentContext) |   | 100% |  | n/a | 0 | 1 | 0 | 4 | 0 | 1 | 
| visit(ParseTree) |   | 100% |   | 100% | 0 | 2 | 0 | 4 | 0 | 1 | 
| visitTypeParameter(JavaLanguageParser.TypeParameterContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitEnumBody(JavaLanguageParser.EnumBodyContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitEnumConstant(JavaLanguageParser.EnumConstantContext) |   | 100% |  | n/a | 0 | 1 | 0 | 4 | 0 | 1 | 
| visitClassBody(JavaLanguageParser.ClassBodyContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitInterfaceBody(JavaLanguageParser.InterfaceBodyContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitFormalParameterList(JavaLanguageParser.FormalParameterListContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitAnnotation(JavaLanguageParser.AnnotationContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitAnnotationTypeBody(JavaLanguageParser.AnnotationTypeBodyContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitCatchType(JavaLanguageParser.CatchTypeContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitResourceSpecification(JavaLanguageParser.ResourceSpecificationContext) |   | 100% |  | n/a | 0 | 1 | 0 | 4 | 0 | 1 | 
| visitForInit(JavaLanguageParser.ForInitContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitExpressionList(JavaLanguageParser.ExpressionListContext) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| create(int, Token) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| createModifiers(List) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| lambda$visitTernaryOp$20(JavaLanguageParser.TernaryOpContext, ParseTree) |   | 100% |   | 100% | 0 | 2 | 0 | 1 | 0 | 1 | 
| lambda$visitMethodRef$19(JavaLanguageParser.MethodRefContext, ParseTree) |   | 100% |   | 100% | 0 | 2 | 0 | 1 | 0 | 1 | 
| lambda$visitPrimaryCtorCall$11(JavaLanguageParser.PrimaryCtorCallContext, ParseTree) |   | 100% |   | 100% | 0 | 2 | 0 | 1 | 0 | 1 | 
| visitClassDeclaration(JavaLanguageParser.ClassDeclarationContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitEnumDeclaration(JavaLanguageParser.EnumDeclarationContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitInterfaceDeclaration(JavaLanguageParser.InterfaceDeclarationContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitAnnotationTypeDeclaration(JavaLanguageParser.AnnotationTypeDeclarationContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| JavaAstVisitor(CommonTokenStream) |   | 100% |  | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 
| visitEmptyStat(JavaLanguageParser.EmptyStatContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitId(JavaLanguageParser.IdContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| processChildren(DetailAstImpl, List) |   | 100% |  | n/a | 0 | 1 | 0 | 2 | 0 | 1 | 
| create(TerminalNode) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| lambda$visitSwitchBlocks$13(DetailAstImpl, JavaLanguageParser.SwitchBlockStatementGroupContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| lambda$visitClassOrInterfaceType$8(JavaAstVisitor.DetailAstPair, ParseTree) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| lambda$visitVariableDeclarator$6(DetailAstImpl, JavaLanguageParser.ArrayDeclaratorContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitSingleSemiImport(JavaLanguageParser.SingleSemiImportContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitExpression(JavaLanguageParser.ExpressionContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitPrimitiveType(JavaLanguageParser.PrimitiveTypeContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitModifier(JavaLanguageParser.ModifierContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitVariableModifier(JavaLanguageParser.VariableModifierContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitEnumConstants(JavaLanguageParser.EnumConstantsContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitEnumBodyDeclarations(JavaLanguageParser.EnumBodyDeclarationsContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitEmptyClass(JavaLanguageParser.EmptyClassContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitMethodBody(JavaLanguageParser.MethodBodyContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitVariableDeclarators(JavaLanguageParser.VariableDeclaratorsContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitQualifiedNameList(JavaLanguageParser.QualifiedNameListContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitLiteral(JavaLanguageParser.LiteralContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitElementValue(JavaLanguageParser.ElementValueContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitAnnotationType(JavaLanguageParser.AnnotationTypeContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitLocalVar(JavaLanguageParser.LocalVarContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitBlockStat(JavaLanguageParser.BlockStatContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitCaseConstants(JavaLanguageParser.CaseConstantsContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitCaseConstant(JavaLanguageParser.CaseConstantContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitParExpression(JavaLanguageParser.ParExpressionContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitPrimaryExp(JavaLanguageParser.PrimaryExpContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitSingleLambdaParam(JavaLanguageParser.SingleLambdaParamContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitParenPrimary(JavaLanguageParser.ParenPrimaryContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitTokenPrimary(JavaLanguageParser.TokenPrimaryContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitCreator(JavaLanguageParser.CreatorContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitCreatedNamePrimitive(JavaLanguageParser.CreatedNamePrimitiveContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitClassCreatorRest(JavaLanguageParser.ClassCreatorRestContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitTypeArgs(JavaLanguageParser.TypeArgsContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| visitTypeList(JavaLanguageParser.TypeListContext) |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| lambda$visitArguments$27() |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| lambda$visitMethodCall$21() |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| lambda$visitSimpleMethodCall$18() |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 
| lambda$visitInvOp$17() |   | 100% |  | n/a | 0 | 1 | 0 | 1 | 0 | 1 |