Package org.antlr.v4.runtime.tree
Interface SyntaxTree
- All Superinterfaces:
Tree
- All Known Subinterfaces:
ErrorNode,ParseTree,RuleNode,TerminalNode
- All Known Implementing Classes:
ErrorNodeImpl,GrammarInterpreterRuleContext,graphemesParser.Emoji_sequenceContext,graphemesParser.Grapheme_clusterContext,graphemesParser.GraphemesContext,GroovyLikeParser.ArgsContext,GroovyLikeParser.BlockContext,GroovyLikeParser.ClassBodyContext,GroovyLikeParser.ClosureContext,GroovyLikeParser.CompilationUnitContext,GroovyLikeParser.ExpressionContext,GroovyLikeParser.FieldDeclContext,GroovyLikeParser.MemberContext,GroovyLikeParser.MethodDeclContext,GroovyLikeParser.NlsContext,GroovyLikeParser.PackageDeclContext,GroovyLikeParser.ParamsContext,GroovyLikeParser.PostfixContext,GroovyLikeParser.PrimaryContext,GroovyLikeParser.QualifiedNameContext,GroovyLikeParser.SepContext,GroovyLikeParser.StatementContext,GroovyLikeParser.TypeDeclContext,InterpreterRuleContext,JavaParser.AnnotationConstantRestContext,JavaParser.AnnotationContext,JavaParser.AnnotationMethodOrConstantRestContext,JavaParser.AnnotationMethodRestContext,JavaParser.AnnotationNameContext,JavaParser.AnnotationTypeBodyContext,JavaParser.AnnotationTypeDeclarationContext,JavaParser.AnnotationTypeElementDeclarationContext,JavaParser.AnnotationTypeElementRestContext,JavaParser.ArgumentsContext,JavaParser.ArrayCreatorRestContext,JavaParser.ArrayInitializerContext,JavaParser.BlockContext,JavaParser.BlockStatementContext,JavaParser.CatchClauseContext,JavaParser.CatchTypeContext,JavaParser.ClassBodyContext,JavaParser.ClassBodyDeclarationContext,JavaParser.ClassCreatorRestContext,JavaParser.ClassDeclarationContext,JavaParser.ClassOrInterfaceModifierContext,JavaParser.ClassOrInterfaceTypeContext,JavaParser.CompilationUnitContext,JavaParser.ConstantDeclaratorContext,JavaParser.ConstantExpressionContext,JavaParser.ConstDeclarationContext,JavaParser.ConstructorBodyContext,JavaParser.ConstructorDeclarationContext,JavaParser.CreatedNameContext,JavaParser.CreatorContext,JavaParser.DefaultValueContext,JavaParser.ElementValueArrayInitializerContext,JavaParser.ElementValueContext,JavaParser.ElementValuePairContext,JavaParser.ElementValuePairsContext,JavaParser.EnhancedForControlContext,JavaParser.EnumBodyDeclarationsContext,JavaParser.EnumConstantContext,JavaParser.EnumConstantNameContext,JavaParser.EnumConstantsContext,JavaParser.EnumDeclarationContext,JavaParser.ExplicitGenericInvocationContext,JavaParser.ExplicitGenericInvocationSuffixContext,JavaParser.ExpressionContext,JavaParser.ExpressionListContext,JavaParser.FieldDeclarationContext,JavaParser.FinallyBlockContext,JavaParser.ForControlContext,JavaParser.ForInitContext,JavaParser.FormalParameterContext,JavaParser.FormalParameterListContext,JavaParser.FormalParametersContext,JavaParser.ForUpdateContext,JavaParser.GenericConstructorDeclarationContext,JavaParser.GenericInterfaceMethodDeclarationContext,JavaParser.GenericMethodDeclarationContext,JavaParser.ImportDeclarationContext,JavaParser.InnerCreatorContext,JavaParser.InterfaceBodyContext,JavaParser.InterfaceBodyDeclarationContext,JavaParser.InterfaceDeclarationContext,JavaParser.InterfaceMemberDeclarationContext,JavaParser.InterfaceMethodDeclarationContext,JavaParser.LastFormalParameterContext,JavaParser.LiteralContext,JavaParser.LocalVariableDeclarationContext,JavaParser.LocalVariableDeclarationStatementContext,JavaParser.MemberDeclarationContext,JavaParser.MethodBodyContext,JavaParser.MethodDeclarationContext,JavaParser.ModifierContext,JavaParser.NonWildcardTypeArgumentsContext,JavaParser.NonWildcardTypeArgumentsOrDiamondContext,JavaParser.PackageDeclarationContext,JavaParser.ParExpressionContext,JavaParser.PrimaryContext,JavaParser.PrimitiveTypeContext,JavaParser.QualifiedNameContext,JavaParser.QualifiedNameListContext,JavaParser.ResourceContext,JavaParser.ResourcesContext,JavaParser.ResourceSpecificationContext,JavaParser.StatementContext,JavaParser.StatementExpressionContext,JavaParser.SuperSuffixContext,JavaParser.SwitchBlockStatementGroupContext,JavaParser.SwitchLabelContext,JavaParser.TypeArgumentContext,JavaParser.TypeArgumentsContext,JavaParser.TypeArgumentsOrDiamondContext,JavaParser.TypeBoundContext,JavaParser.TypeContext,JavaParser.TypeDeclarationContext,JavaParser.TypeListContext,JavaParser.TypeParameterContext,JavaParser.TypeParametersContext,JavaParser.VariableDeclaratorContext,JavaParser.VariableDeclaratorIdContext,JavaParser.VariableDeclaratorsContext,JavaParser.VariableInitializerContext,JavaParser.VariableModifierContext,ParserRuleContext,RuleContext,RuleContextWithAltNum,TerminalNodeImpl
A tree that knows about an interval in a token stream
is some kind of syntax tree. Subinterfaces distinguish
between parse trees and other kinds of syntax trees we might want to create.
-
Method Summary
Modifier and TypeMethodDescriptionReturn anIntervalindicating the index in theTokenStreamof the first and last token associated with this subtree.Methods inherited from interface org.antlr.v4.runtime.tree.Tree
getChild, getChildCount, getParent, getPayload, toStringTree
-
Method Details
-
getSourceInterval
Return anIntervalindicating the index in theTokenStreamof the first and last token associated with this subtree. If this node is a leaf, then the interval represents a single token and has interval i..i for token index i.An interval of i..i-1 indicates an empty interval at position i in the input stream, where 0 <= i <= the size of the input token stream. Currently, the code base can only have i=0..n-1 but in concept one could have an empty interval after EOF.
If source interval is unknown, this returns
Interval.INVALID.As a weird special case, the source interval for rules matched after EOF is unspecified.
-