OMSim
Geant4 for IceCube optical module studies
Loading...
Searching...
No Matches
CADMesh::File::Lexer Class Reference
Collaboration diagram for CADMesh::File::Lexer:
[legend]

Public Member Functions

 Lexer (std::string filepath, State *initial_state=nullptr)
 
std::string String ()
 
void Run (State *initial_state, size_t lines=0)
 
Items GetItems ()
 
void Backup ()
 
void BackupTo (int position)
 
std::string Next ()
 
std::string Peek ()
 
void Skip ()
 
ItemThisIsA (Token token, std::string error="")
 
ItemStartOfA (Token token, std::string error="")
 
ItemEndOfA (Token token, std::string error="")
 
ItemMaybeEndOfA (Token token, std::string error="")
 
bool OneOf (std::string possibles)
 
bool ManyOf (std::string possibles)
 
bool Until (std::string match)
 
bool MatchExactly (std::string match)
 
bool OneDigit ()
 
bool ManyDigits ()
 
bool OneLetter ()
 
bool ManyLetters ()
 
bool ManyCharacters ()
 
bool Integer ()
 
bool Float ()
 
bool Number ()
 
bool SkipWhiteSpace ()
 
bool SkipLineBreak ()
 
bool SkipLineBreaks ()
 
bool SkipLine ()
 
StateError (std::string message)
 
StateLastError ()
 
bool TestState (State *state)
 
bool IsDryRun ()
 
void PrintMessage (std::string name, std::string message)
 
void PrintItem (Item item)
 
size_t LineNumber ()
 

Private Attributes

Statestate_
 
Itemparent_item_ = nullptr
 
Items items_
 
std::string input_
 
size_t position_ = 0
 
size_t start_ = 0
 
size_t width_ = 1
 
size_t line_ = 1
 
size_t end_line_ = 0
 
bool dry_run_ = false
 
int depth_ = 0
 
std::string last_error_ = ""
 

The documentation for this class was generated from the following file: