| MySQL++ SSQLS v2 Translator
        3.2.4
        | 
Parses SSQLS v2 documents and holds the parse result. More...
#include <parsev2.h>
| Classes | |
| class | AccessorStyleOption | 
| 'option accessor_style' directive line  More... | |
| class | ExceptionOnSchemaMismatchOption | 
| 'option exception_on_schema_mismatch' directive line  More... | |
| class | Field | 
| 'field' directive line  More... | |
| class | File | 
| Holds information about an SSQLS v2 file we're parsing.  More... | |
| class | FileException | 
| Exception object thrown to indicate a file I/O error.  More... | |
| class | HeaderExtensionOption | 
| 'option header_extension' directive line  More... | |
| class | ImplementationExtensionOption | 
| 'option implementation_extension' directive line  More... | |
| class | Include | 
| 'include' directive line  More... | |
| class | Line | 
| Base class for parsed SSQLS v2 declaration lines.  More... | |
| class | Option | 
| Base class for known SSQLS v2 'option' directives.  More... | |
| class | ParseException | 
| Exception object thrown by File::error() to report an SSQLS v2 parsing error.  More... | |
| class | Table | 
| 'table' directive line  More... | |
| Public Types | |
| typedef std::vector< std::string > | StringList | 
| List of tokens as returned by boost::algorithm::split. | |
| typedef StringList::const_iterator | StringListIt | 
| Iterator into a StringList.  More... | |
| typedef std::vector< Line * > | LineList | 
| A list of pointers to Line objects.  More... | |
| typedef LineList::const_iterator | LineListIt | 
| Iterator into a LineList.  More... | |
| Public Member Functions | |
| ParseV2 (const char *file_name) | |
| Constructor.  More... | |
| ~ParseV2 () | |
| Destructor. | |
| LineListIt | begin () const | 
| Get an iterator pointing to the start of our LineList. | |
| void | clear () | 
| Dump our line list.  More... | |
| LineListIt | end () const | 
| Get an iterator pointing just past the end of our LineList. | |
Parses SSQLS v2 documents and holds the parse result.
Construct an object of this type from a file name, and you will get either a parse result or a thrown exception.
| typedef std::vector<Line*> ParseV2::LineList | 
A list of pointers to Line objects.
These are used for holding the results of the file parsing step
| typedef LineList::const_iterator ParseV2::LineListIt | 
Iterator into a LineList.
It's const because once the parse is completed, we switch into LineList traversal mode, which doesn't modify the list.
| typedef StringList::const_iterator ParseV2::StringListIt | 
Iterator into a StringList.
This is const because StringLists are never modified once created
| ParseV2::ParseV2 | ( | const char * | file_name | ) | 
Constructor.
Given the name of an SSQLS v2 file, load it up and try to parse it, throwing one of our inner exception types if that fails.
| file_name | path to an SSQLS v2 file to parse; may be in a different directory, given a relative or absolute path to the file | 
| FileException | |
| ParseException | 
References ParseV2::Include::begin(), ParseV2::Include::end(), ParseV2::Line::parse(), and ParseV2::File::read_line().
| 
 | inline | 
Dump our line list.
Doesn't delete the line objects. This is used by Include, because its creator will take over ownership of those objects.
Referenced by ParseV2::Include::~Include().
 1.8.14
 1.8.14