<s> from . tokens_base import * <EOL> class TokenEof ( Token ) : <EOL> def __init__ ( self , * args , ** kwargs ) : <EOL> super ( ) . __init__ ( TOKEN_EOF , '<STR_LIT>' , * args , ** kwargs ) <EOL> class TokenOfSearch ( TokenOfRange ) : <EOL> pass <EOL> class TokenDollar ( TokenOfRange ) : <EOL> def __init__ ( self , * args , ** kwargs ) : <EOL> super ( ) . __init__ ( TOKEN_DOLLAR , '<STR_LIT:$>' , * args , ** kwargs ) <EOL> class TokenComma ( TokenOfRange ) : <EOL> def __init__ ( self , * args , ** kwargs ) : <EOL> super ( ) . __init__ ( TOKEN_COMMA , '<STR_LIT:U+002C>' , * args , ** kwargs ) <EOL> class TokenSemicolon ( TokenOfRange ) : <EOL> def __init__ ( self , * args , ** kwargs ) : <EOL> super ( ) . __init__ ( TOKEN_SEMICOLON , '<STR_LIT:;>' , * args , ** kwargs ) <EOL> class TokenOffset ( TokenOfRange ) : <EOL> def __init__ ( self , content , * args , ** kwargs ) : <EOL> super ( ) . __init__ ( TOKEN_OFFSET , content , * args , ** kwargs ) <EOL> def __str__ ( self ) : <EOL> offsets = [ ] <EOL> for offset in self . content : <EOL> offsets . append ( '<STR_LIT>' . format ( '<STR_LIT>' if offset < <NUM_LIT:0> else '<STR_LIT:+>' , offset ) ) <EOL> return '<STR_LIT>' . join ( offsets ) <EOL> class TokenPercent ( TokenOfRange ) : <EOL> def __init__ ( self , * args , ** kwargs ) : <EOL> super ( ) . __init__ ( TOKEN_PERCENT , '<STR_LIT:%>' , * args , ** kwargs ) <EOL> class TokenDot ( TokenOfRange ) : <EOL> def __init__ ( self , * args , ** kwargs ) : <EOL> super ( ) . __init__ ( TOKEN_DOT , '<STR_LIT:.>' , * args , ** kwargs ) <EOL> class TokenSearchForward ( TokenOfSearch ) : <EOL> def __init__ ( self , content , * args , ** kwargs ) : <EOL> super ( ) . __init__ ( TOKEN_SEARCH_FORWARD , content , * args , ** kwargs ) <EOL> def __str__ ( self ) : <EOL> return '<STR_LIT>' . format ( self . content ) <EOL> class TokenSearchBackward ( TokenOfSearch ) : <EOL> def __init__ ( self , content , * args , ** kwargs ) : <EOL> super ( ) . __init__ ( TOKEN_SEARCH_BACKWARD , content , * args , ** kwargs ) <EOL> def __str__ ( self ) : <EOL> return '<STR_LIT>' . format ( self . content ) <EOL> class TokenDigits ( TokenOfRange ) : <EOL> def __init__ ( self , content , * args , ** kwargs ) : <EOL> super ( ) . __init__ ( TOKEN_DIGITS , content , * args , ** kwargs ) <EOL> class TokenMark ( TokenOfRange ) : <EOL> def __init__ ( self , content , * args , ** kwargs ) : <EOL> super ( ) . __init__ ( TOKEN_MARK , content , * args , ** kwargs ) <EOL> def __str__ ( self ) : <EOL> return "<STR_LIT>" . format ( self . content ) <EOL> def __repr__ ( self ) : <EOL> return "<STR_LIT>" . format ( self . __class__ . __name__ , self . content ) <EOL> @ property <EOL> def exact ( self ) : <EOL> return self . content and self . content . startswith ( '<STR_LIT>' ) </s>
