Package | org.antlr.runtime |
Class | public class TokenRewriteStream |
Inheritance | TokenRewriteStream ![]() |
Property | Defined by | ||
---|---|---|---|
![]() | channel : int = 0 Skip tokens on any channel but this one; this is how we skip whitespace...
| CommonTokenStream | |
![]() | channelOverrideMap : Array Map
| CommonTokenStream | |
![]() | _discardOffChannelTokens : Boolean = false By default, track all incoming tokens
| CommonTokenStream | |
![]() | discardSet : Array Set
| CommonTokenStream | |
![]() | lastMarker : int Track the last mark() call result value for use in rewind().
| CommonTokenStream | |
lastRewriteTokenIndexes : Object Map String (program name) -> Integer index
| TokenRewriteStream | ||
![]() | p : int = -1 The index into the tokens list of the current token (next token
to consume).
| CommonTokenStream | |
programs : Object You may have multiple, named streams of rewrite operations.
| TokenRewriteStream | ||
![]() | tokens : Array Record every single token pulled from the source so we can reproduce
chunks of it later.
| CommonTokenStream | |
![]() | _tokenSource : TokenSource | CommonTokenStream |
Method | Defined by | ||
---|---|---|---|
TokenRewriteStream(tokenSource:TokenSource = null, channel:int)
| TokenRewriteStream | ||
![]() |
consume():void
Move the input pointer to the next incoming token.
| CommonTokenStream | |
deleteProgram(programName:String):void
Reset the program so that no instructions exist
| TokenRewriteStream | ||
![]() |
discardOffChannelTokens(discardOffChannelTokens:Boolean):void
| CommonTokenStream | |
![]() |
discardTokenType(ttype:int):void
| CommonTokenStream | |
getLastRewriteTokenIndex(programName:String):int
| TokenRewriteStream | ||
![]() |
Return absolute token i; ignore which channel the tokens are on;
that is, count all tokens not just on-channel tokens.
| CommonTokenStream | |
![]() |
getTokens():Array
| CommonTokenStream | |
![]() |
getTokensArray(start:int, stop:int, types:Array):Array
| CommonTokenStream | |
![]() |
getTokensBitSet(start:int, stop:int, types:BitSet):Array
Given a start and stop index, return a List of all tokens in
the token type BitSet.
| CommonTokenStream | |
![]() |
getTokensInt(start:int, stop:int, ttype:int):Array
| CommonTokenStream | |
![]() |
getTokensRange(start:int, stop:int):Array
| CommonTokenStream | |
insertAfter(index:int, text:Object, programName:String):void
| TokenRewriteStream | ||
insertAfterToken(t:Token, text:Object, programName:String):void
| TokenRewriteStream | ||
insertBefore(index:int, text:Object, programName:String):void
| TokenRewriteStream | ||
insertBeforeToken(t:Token, text:Object, programName:String):void
| TokenRewriteStream | ||
![]() |
LA(i:int):int
| CommonTokenStream | |
![]() |
Get the ith token from the current position 1..n where k=1 is the
first symbol of lookahead.
| CommonTokenStream | |
![]() |
mark():int
| CommonTokenStream | |
![]() |
release(marker:int):void
| CommonTokenStream | |
remove(index:int, programName:String):void
| TokenRewriteStream | ||
removeRange(fromIndex:int, toIndex:int, programName:String):void
| TokenRewriteStream | ||
removeToken(token:Token, programName:String):void
| TokenRewriteStream | ||
TokenRewriteStream | |||
replace(index:int, text:Object, programName:String):void
| TokenRewriteStream | ||
replaceRange(fromIndex:int, toIndex:int, text:Object, programName:String):void
| TokenRewriteStream | ||
replaceToken(indexT:Token, text:Object, programName:String):void
| TokenRewriteStream | ||
TokenRewriteStream | |||
![]() |
reset():void
| CommonTokenStream | |
![]() |
rewind():void
| CommonTokenStream | |
![]() |
rewindTo(marker:int):void
| CommonTokenStream | |
rollback(instructionIndex:int, programName:String):void
Rollback the instruction stream for a program so that
the indicated instruction (via instructionIndex) is no
longer in the stream.
| TokenRewriteStream | ||
![]() |
seek(index:int):void
| CommonTokenStream | |
![]() |
setTokenTypeChannel(ttype:int, channel:int):void
A simple filter mechanism whereby you can tell this token stream
to force all tokens of type ttype to be on channel.
| CommonTokenStream | |
toDebugString():String
| TokenRewriteStream | ||
toDebugStringWithRange(start:int, end:int):String
| TokenRewriteStream | ||
toOriginalString():String
| TokenRewriteStream | ||
toOriginalStringWithRange(start:int, end:int):String
| TokenRewriteStream | ||
toString():String
| TokenRewriteStream | ||
toStringWithRange(start:int, end:int):String
| TokenRewriteStream | ||
toStringWithRangeAndProgram(start:int, end:int, programName:String):String
| TokenRewriteStream | ||
![]() | CommonTokenStream |
Method | Defined by | ||
---|---|---|---|
addToSortedRewriteList(op:RewriteOperation, programName:String):void
Add an instruction to the rewrite instruction list ordered by
the instruction number (use a binary search for efficiency).
| TokenRewriteStream | ||
![]() |
fillBuffer():void
Load all tokens from the token source and put in tokens.
| CommonTokenStream | |
getProgram(name:String):Array
| TokenRewriteStream | ||
![]() |
Look backwards k tokens on-channel tokens
| CommonTokenStream | |
setLastRewriteTokenIndex(programName:String, i:int):void
| TokenRewriteStream | ||
![]() |
skipOffTokenChannels(i:int):int
Given a starting index, return the index of the first on-channel
token.
| CommonTokenStream | |
![]() |
skipOffTokenChannelsReverse(i:int):int
| CommonTokenStream |
Constant | Defined by | ||
---|---|---|---|
DEFAULT_PROGRAM_NAME : String = "default" [static]
| TokenRewriteStream | ||
MIN_TOKEN_INDEX : int = 0 [static]
| TokenRewriteStream |
lastRewriteTokenIndexes | property |
protected var lastRewriteTokenIndexes:Object
Map String (program name) -> Integer index
programs | property |
protected var programs:Object
You may have multiple, named streams of rewrite operations. I'm calling these things "programs." Maps String (name) -> rewrite (List)
TokenRewriteStream | () | constructor |
public function TokenRewriteStream(tokenSource:TokenSource = null, channel:int)
Parameters
tokenSource:TokenSource (default = null )
|
|
channel:int |
addToSortedRewriteList | () | method |
protected function addToSortedRewriteList(op:RewriteOperation, programName:String):void
Add an instruction to the rewrite instruction list ordered by the instruction number (use a binary search for efficiency). The list is ordered so that toString() can be done efficiently. When there are multiple instructions at the same index, the instructions must be ordered to ensure proper behavior. For example, a delete at index i must kill any replace operation at i. Insert-before operations must come before any replace / delete instructions. If there are multiple insert instructions for a single index, they are done in reverse insertion order so that "insert foo" then "insert bar" yields "foobar" in front rather than "barfoo". This is convenient because I can insert new InsertOp instructions at the index returned by the binary search. A ReplaceOp kills any previous replace op. Since delete is the same as replace with null text, i can check for ReplaceOp and cover DeleteOp at same time. :)
Parametersop:RewriteOperation |
|
programName:String |
deleteProgram | () | method |
public function deleteProgram(programName:String):void
Reset the program so that no instructions exist
ParametersprogramName:String |
getLastRewriteTokenIndex | () | method |
public function getLastRewriteTokenIndex(programName:String):int
Parameters
programName:String |
int |
getProgram | () | method |
protected function getProgram(name:String):Array
Parameters
name:String |
Array |
insertAfter | () | method |
public function insertAfter(index:int, text:Object, programName:String):void
Parameters
index:int |
|
text:Object |
|
programName:String |
insertAfterToken | () | method |
public function insertAfterToken(t:Token, text:Object, programName:String):void
Parameters
t:Token |
|
text:Object |
|
programName:String |
insertBefore | () | method |
public function insertBefore(index:int, text:Object, programName:String):void
Parameters
index:int |
|
text:Object |
|
programName:String |
insertBeforeToken | () | method |
public function insertBeforeToken(t:Token, text:Object, programName:String):void
Parameters
t:Token |
|
text:Object |
|
programName:String |
remove | () | method |
public function remove(index:int, programName:String):void
Parameters
index:int |
|
programName:String |
removeRange | () | method |
public function removeRange(fromIndex:int, toIndex:int, programName:String):void
Parameters
fromIndex:int |
|
toIndex:int |
|
programName:String |
removeToken | () | method |
public function removeToken(token:Token, programName:String):void
Parameters
token:Token |
|
programName:String |
removeTokenRange | () | method |
public function removeTokenRange(fromToken:Token, toToken:Token, programName:String):void
Parameters
fromToken:Token |
|
toToken:Token |
|
programName:String |
replace | () | method |
public function replace(index:int, text:Object, programName:String):void
Parameters
index:int |
|
text:Object |
|
programName:String |
replaceRange | () | method |
public function replaceRange(fromIndex:int, toIndex:int, text:Object, programName:String):void
Parameters
fromIndex:int |
|
toIndex:int |
|
text:Object |
|
programName:String |
replaceToken | () | method |
public function replaceToken(indexT:Token, text:Object, programName:String):void
Parameters
indexT:Token |
|
text:Object |
|
programName:String |
replaceTokenRange | () | method |
public function replaceTokenRange(fromToken:Token, toToken:Token, text:Object, programName:String):void
Parameters
fromToken:Token |
|
toToken:Token |
|
text:Object |
|
programName:String |
rollback | () | method |
public function rollback(instructionIndex:int, programName:String):void
Rollback the instruction stream for a program so that the indicated instruction (via instructionIndex) is no longer in the stream. UNTESTED!
ParametersinstructionIndex:int |
|
programName:String |
setLastRewriteTokenIndex | () | method |
protected function setLastRewriteTokenIndex(programName:String, i:int):void
Parameters
programName:String |
|
i:int |
toDebugString | () | method |
public function toDebugString():String
Returns
String |
toDebugStringWithRange | () | method |
public function toDebugStringWithRange(start:int, end:int):String
Parameters
start:int |
|
end:int |
String |
toOriginalString | () | method |
public function toOriginalString():String
Returns
String |
toOriginalStringWithRange | () | method |
public function toOriginalStringWithRange(start:int, end:int):String
Parameters
start:int |
|
end:int |
String |
toString | () | method |
public override function toString():String
Returns
String |
toStringWithRange | () | method |
public override function toStringWithRange(start:int, end:int):String
Parameters
start:int |
|
end:int |
String |
toStringWithRangeAndProgram | () | method |
public function toStringWithRangeAndProgram(start:int, end:int, programName:String):String
Parameters
start:int |
|
end:int |
|
programName:String |
String |
DEFAULT_PROGRAM_NAME | constant |
public static const DEFAULT_PROGRAM_NAME:String = "default"
MIN_TOKEN_INDEX | constant |
public static const MIN_TOKEN_INDEX:int = 0