![]() |
Zen
A cross-platform functional programming language
|
Class that generates a window file. More...
Public Member Functions | |
| WindowFileGenerator (const Ast::WindowImplItem &def) | |
| Default constructor. | |
| void | generate (const Build::Project &project, const z::fileinfo &fi) |
| Generates the window file. | |
Static Public Member Functions | |
| static z::string | getFilename (const z::fileinfo &fi, const Ast::FunctionDef &def) |
| Returns the base filename for lexer and parser. | |
Private Member Functions | |
| void | enterWindow (const Build::Project &project, const z::string &filename) |
| Initial code for the window file. | |
| void | leaveWindow (const Build::Project &project, const z::string &filename) |
| Final code for the window file. Also calls the MOC compiler. | |
Private Attributes | |
| const Ast::WindowImplItem & | _def |
| The window implementation item. | |
| zbl::CppGen::OutFile | _moc |
| MOC file. | |
Class that generates a window file.
| WindowFileGenerator | ( | const Ast::WindowImplItem & | def | ) | [inline] |
Default constructor.
| def | The window implementation item |
| void enterWindow | ( | const Build::Project & | project, |
| const z::string & | filename | ||
| ) | [inline, private] |
Initial code for the window file.
| project | The project definition |
| filename | The lexer filename |
| void generate | ( | const Build::Project & | project, |
| const z::fileinfo & | fi | ||
| ) | [inline] |
Generates the window file.
| project | The project definition |
| fi | FileInfo instance |
| static z::string getFilename | ( | const z::fileinfo & | fi, |
| const Ast::FunctionDef & | def | ||
| ) | [inline, static] |
Returns the base filename for lexer and parser.
| fi | FileInfo instance |
| def | The function definition for this grammar |
| void leaveWindow | ( | const Build::Project & | project, |
| const z::string & | filename | ||
| ) | [inline, private] |
Final code for the window file. Also calls the MOC compiler.
| project | The project definition |
| filename | The lexer filename |