Factory for creating expressions with source location information 더 자세히 ...
#include <exprMaker.hpp>
Public 멤버 함수 | |
| exprMaker (const srcFile &s, ncnt row, ncnt col) | |
| me & | addRow () |
| me & | addRow (ncnt step) |
| me & | addCol () |
| me & | addCol (ncnt step) |
| me & | setRow (ncnt row) |
| me & | setCol (ncnt col) |
| me & | setSrcFile (const srcFile &s) |
| void | rel () |
| const point & | getPos () const |
| const srcFile & | getSrcFile () const |
| tstr< src > | makeSrc (const std::string &name) const |
| template<typename T , typename... Args> | |
| T * | birth (const std::string &name, const Args &... args) const |
| template<typename T , typename... Args> | |
| T * | make (const Args &... args) const |
| Creates a new expression object without a specific name and sets its source location. | |
| func * | makeExpandFunc (const defBlock &blk) const |
| Creates a function specifically for handling "expand" logic within definition blocks. | |
| assignExpr * | makeAssignExprFrom (const defVarExpr &e) const |
| Creates an assignment expression from a variable definition expression. | |
| func * | makeCommonFunc (const defBlock &blk) const |
| Creates a "common" function associated with a definition block. | |
Factory for creating expressions with source location information
Creates expression objects with proper source file and position metadata. Used by parser to track source locations for debugging and error reporting.
|
inline |
|
inline |
Creates a new expression object without a specific name and sets its source location.
| T | The type of the expression to create. |
| Args | The types of the constructor arguments for T. |
| args | The constructor arguments for T. |
| assignExpr * by::exprMaker::makeAssignExprFrom | ( | const defVarExpr & | e | ) | const |
Creates an assignment expression from a variable definition expression.
| e | The variable definition expression (defVarExpr) to derive the assignment from. |
assignExpr object. Creates a "common" function associated with a definition block.
| blk | The definition block for which the common function is being created. |
func object. Creates a function specifically for handling "expand" logic within definition blocks.
| blk | The definition block associated with the expand function. |
func object.