grammar - ANTLR 3, what does LT!* mean? -


i looking @ code javascript grammar written in antlr 3,

http://www.antlr3.org/grammar/1206736738015/javascript.g

in many instances found

program     : lt!* sourceelements lt!* eof!     ; 

what lt!* mean ?

edit:

from http://ftp.camk.edu.pl/camk/chris/antlrman/antlrman.pdf

i found lt stands lookahead token nth ahead token, n part in above ?

no, lt not mean lookahead token in context. token defined @ end of grammar:

lt  : '\n'      // line feed.  | '\r'      // carriage return.  | '\u2028'  // line separator.  | '\u2029'  // paragraph separator.  ; 

the * means parser tries match 0 or more of these tokens, , ! indicates generated ast should not include these lt tokens.


Popular posts from this blog

How to calculate SNR of signals in MATLAB? -

c# - Attempting to upload to FTP: System.Net.WebException: System error -

ios - UISlider customization: how to properly add shadow to custom knob image -