|
Public Types |
enum | blockkind_t {
b_unknown = 0,
b_module,
b_file,
b_statement,
b_definition,
b_value,
b_namespace,
b_using
} |
Public Member Functions |
| YBlock (const std::string &filename, blockkind_t kind=b_unknown) |
| YBlock (const Point *point) |
| YBlock (std::istream &str) |
| ~YBlock () |
constTypePtr | type () const |
void | finishBlock () |
virtual YCPValue | evaluate (bool cse=false) |
| called when evaluating the import statement
|
YCPValue | evaluate (int statement_index, bool skip_initial_imports=true) |
virtual const std::string | filename () const |
| used for error reporting
|
virtual SymbolTable * | table () const |
| get our whole symbol table?
|
virtual Y2Function * | createFunctionCall (const string name) |
const Point * | point () const |
const string | name () const |
| what namespace do we implement
|
void | setName (const string &name) |
const Y2Namespace * | nameSpace () const |
Y2Namespace * | nameSpace () |
void | setKind (blockkind_t kind) |
blockkind_t | kind () const |
bool | isModule () const |
bool | isFile () const |
bool | isStatement () const |
bool | isDefinition () const |
bool | isValue () const |
bool | isNamespace () const |
unsigned int | newValue (constTypePtr type, YCodePtr code) |
TableEntry * | newEntry (const char *name, SymbolEntry::category_t cat, constTypePtr type, unsigned int line) |
TableEntry * | newNamespace (const string &name, Y2Namespace *name_space, int line) |
void | attachEntry (TableEntry *entry) |
void | detachEnvironment (SymbolTable *table) |
void | attachStatement (YStatementPtr statement) |
void | pretachStatement (YStatementPtr statement) |
int | statementCount () const |
YSReturnPtr | justReturn () const |
void | endInclude () |
bool | isIncluded (string includename) const |
void | addIncluded (string includename) |
string | toString () const |
| unparse. useful for debugging
|
string | environmentToString () const |
std::ostream & | toStream (std::ostream &str) const |
Private Types |
typedef yTElist | yTElist_t |
typedef stmtlist | stmtlist_t |
Private Member Functions |
| REP_BODY (YBlock) |
Private Attributes |
blockkind_t | m_kind |
string | m_name |
yTElist_t * | m_tenvironment |
yTElist_t * | m_last_tparm |
const Point * | m_point |
stmtlist_t * | m_statements |
stmtlist_t * | m_last_statement |
std::list< std::string > | m_includes |