Java.target.apidocs.org.antlr.v4.runtime.TokenStream.html Maven / Gradle / Ivy
Show all versions of antlr4-perf-testsuite Show documentation
TokenStream (ANTLR 4 Runtime (Optimized) 4.13.1.3 API)
org.antlr.v4.runtime
Interface TokenStream
-
- All Superinterfaces:
- IntStream
- All Known Implementing Classes:
- BufferedTokenStream, CommonTokenStream, UnbufferedTokenStream
public interface TokenStream
extends IntStream
-
-
Field Summary
-
Fields inherited from interface org.antlr.v4.runtime.IntStream
EOF, UNKNOWN_SOURCE_NAME
-
Method Summary
All Methods Instance Methods Abstract Methods
Modifier and Type
Method and Description
Token
get(int i)
Gets the Token
at the specified index
in the stream.
String
getText()
Return the text of all tokens in the stream.
String
getText(Interval interval)
Return the text of all tokens within the specified interval
.
String
getText(Object start,
Object stop)
Return the text of all tokens in this stream between start
and
stop
(inclusive).
String
getText(RuleContext ctx)
Return the text of all tokens in the source interval of the specified
context.
TokenSource
getTokenSource()
Gets the underlying TokenSource
which provides tokens for this
stream.
Token
LT(int k)
-
-
Method Detail
-
LT
@NotNull
Token LT(int k)
Get the Token
instance associated with the value returned by
LA(k)
. This method has the same pre- and post-conditions as
IntStream.LA(int)
. In addition, when the preconditions of this method
are met, the return value is non-null and the value of
LT(k).getType()==LA(k)
.
- See Also:
IntStream.LA(int)
-
get
@NotNull
Token get(int i)
Gets the Token
at the specified index
in the stream. When
the preconditions of this method are met, the return value is non-null.
The preconditions for this method are the same as the preconditions of
IntStream.seek(int)
. If the behavior of seek(index)
is
unspecified for the current state and given index
, then the
behavior of this method is also unspecified.
The symbol referred to by index
differs from seek()
only
in the case of filtering streams where index
lies before the end
of the stream. Unlike seek()
, this method does not adjust
index
to point to a non-ignored symbol.
- Throws:
IllegalArgumentException
- if {code index} is less than 0
UnsupportedOperationException
- if the stream does not support
retrieving the token at the specified index
-
getTokenSource
@NotNull
TokenSource getTokenSource()
Gets the underlying TokenSource
which provides tokens for this
stream.
-
getText
@NotNull
String getText(@NotNull
Interval interval)
Return the text of all tokens within the specified interval
. This
method behaves like the following code (including potential exceptions
for violating preconditions of get(int)
, but may be optimized by the
specific implementation.
TokenStream stream = ...;
String text = "";
for (int i = interval.a; i <= interval.b; i++) {
text += stream.get(i).getText();
}
- Parameters:
interval
- The interval of tokens within this stream to get text
for.
- Returns:
- The text of all tokens within the specified interval in this
stream.
- Throws:
NullPointerException
- if interval
is null
-
getText
@NotNull
String getText()
Return the text of all tokens in the stream. This method behaves like the
following code, including potential exceptions from the calls to
IntStream.size()
and getText(Interval)
, but may be
optimized by the specific implementation.
TokenStream stream = ...;
String text = stream.getText(new Interval(0, stream.size()));
- Returns:
- The text of all tokens in the stream.
-
getText
@NotNull
String getText(@NotNull
RuleContext ctx)
Return the text of all tokens in the source interval of the specified
context. This method behaves like the following code, including potential
exceptions from the call to getText(Interval)
, but may be
optimized by the specific implementation.
If ctx.getSourceInterval()
does not return a valid interval of
tokens provided by this stream, the behavior is unspecified.
TokenStream stream = ...;
String text = stream.getText(ctx.getSourceInterval());
- Parameters:
ctx
- The context providing the source interval of tokens to get
text for.
- Returns:
- The text of all tokens within the source interval of
ctx
.
-
getText
@NotNull
String getText(Object start,
Object stop)
Return the text of all tokens in this stream between start
and
stop
(inclusive).
If the specified start
or stop
token was not provided by
this stream, or if the stop
occurred before the start
token, the behavior is unspecified.
For streams which ensure that the Token.getTokenIndex()
method is
accurate for all of its provided tokens, this method behaves like the
following code. Other streams may implement this method in other ways
provided the behavior is consistent with this at a high level.
TokenStream stream = ...;
String text = "";
for (int i = start.getTokenIndex(); i <= stop.getTokenIndex(); i++) {
text += stream.get(i).getText();
}
- Parameters:
start
- The first token in the interval to get text for.
stop
- The last token in the interval to get text for (inclusive).
- Returns:
- The text of all tokens lying between the specified
start
and stop
tokens.
- Throws:
UnsupportedOperationException
- if this stream does not support
this method for the specified tokens
Copyright © 1992–2023 Daniel Sun. All rights reserved.