148 virtual bool isBlock ()
const {
return true; }
177 virtual const std::string
filename ()
const;
189 const string name ()
const;
218 unsigned int newValue (constTypePtr
type, YCodePtr code);
277 string toStringSwitch (map<YCPValue, int, ycp_less> cases,
int defaultcase)
const;
283 std::ostream &
toStream (std::ostream &
str)
const;
284 std::ostream &
toXml( std::ostream &
str,
int indent )
const;
285 std::ostream &
toXmlSwitch( map<YCPValue, int, ycp_less> cases,
int defaultcase, std::ostream &
str,
int indent )
const;
struct stmtlist * next
Definition: YBlock.h:113
blockkind_t bkind() const
Definition: YBlock.cc:360
YCode for precompiled ycp code.
Definition: YCode.h:75
stringlist_t * m_includes
Definition: YBlock.h:127
bool m_running
Definition: YBlock.h:131
#define str
Definition: scanner.cc:997
unsigned int position
Definition: YBlock.h:88
unsigned int newValue(constTypePtr type, YCodePtr code)
Definition: YBlock.cc:141
void pretachStatement(YStatementPtr statement)
Definition: YBlock.cc:262
bool isNamespace() const
Definition: YBlock.h:210
yTElist_t * m_last_tparm
Definition: YBlock.h:98
std::ostream & toStream(std::ostream &str) const
Definition: YBlock.cc:982
void addIncluded(string includename)
Definition: YBlock.cc:1159
blockkind_t
Definition: YBlock.h:55
ykind
Definition: YCode.h:90
Definition: SymbolTable.h:100
virtual SymbolTable * table() const
get our whole symbol table?
Definition: YBlock.cc:157
string toString() const
unparse. useful for debugging
Definition: YBlock.cc:445
YSReturnPtr justReturn() const
Definition: YBlock.cc:367
category_t
Definition: SymbolEntry.h:54
constTypePtr m_type
Definition: YBlock.h:129
void endInclude()
Definition: YBlock.cc:404
Y2Namespace * nameSpace()
Definition: YBlock.h:193
string environmentToString() const
Definition: YBlock.cc:423
~YBlock()
Definition: YBlock.cc:98
void detachEnvironment(SymbolTable *table)
Definition: YBlock.cc:300
stmtlist_t * m_statements
Definition: YBlock.h:118
void setKind(blockkind_t kind)
Definition: YBlock.cc:349
void attachStatement(YStatementPtr statement)
Definition: YBlock.cc:234
constTypePtr type() const
Definition: YBlock.h:152
struct yTElist * next
Definition: YBlock.h:86
std::list< std::string > stringlist_t
Definition: YBlock.h:126
bool isValue() const
Definition: YBlock.h:209
bool isModule() const
Definition: YBlock.h:205
virtual ykind kind() const
Definition: YBlock.h:149
stmtlist_t * m_last_statement
Definition: YBlock.h:121
virtual const std::string filename() const
used for error reporting
Definition: YBlock.cc:131
const Point * point() const
Definition: YBlock.cc:397
const string name() const
what namespace do we implement
Definition: YBlock.cc:382
bool isDefinition() const
Definition: YBlock.h:208
virtual Y2Function * createFunctionCall(const string name, constFunctionTypePtr type)
Definition: YBlock.cc:1174
const Y2Namespace * nameSpace() const
Definition: YBlock.h:192
const Point * m_point
Definition: YBlock.h:106
blockkind_t m_kind
Definition: YBlock.h:73
YCPValue evaluateFrom(int statement_index)
Definition: YBlock.cc:698
void setName(const string &name)
Definition: YBlock.cc:389
yTElist_t * m_tenvironment
Definition: YBlock.h:94
YBlock(const std::string &filename, blockkind_t kind=b_unknown)
Definition: YBlock.cc:57
YStatementPtr stmt
Definition: YBlock.h:112
Wrapper for YCPValueRep This class realizes an automatic memory management via YCPElement. Access the functionality of YCPValueRep with the arrow operator. See YCPValueRep.
Definition: YCPValue.h:275
TableEntry * newNamespace(const string &name, Y2Namespace *name_space, int line)
Definition: YBlock.cc:279
TableEntry * newEntry(const char *name, SymbolEntry::category_t cat, constTypePtr type, unsigned int line)
Definition: YBlock.cc:170
int statementCount() const
Definition: YBlock.cc:827
Definition: Y2Namespace.h:43
std::ostream & toXmlSwitch(map< YCPValue, int, ycp_less > cases, int defaultcase, std::ostream &str, int indent) const
Definition: YBlock.cc:524
string toStringSwitch(map< YCPValue, int, ycp_less > cases, int defaultcase) const
Definition: YBlock.cc:480
bool isFile() const
Definition: YBlock.h:206
bool isIncluded(string includename) const
Definition: YBlock.cc:1149
void attachEntry(TableEntry *entry)
Definition: YBlock.cc:205
An istream that remembers some data about the bytecode.
Definition: Bytecode.h:42
string m_name
Definition: YBlock.h:77
virtual YCPValue evaluate(bool cse=false)
called when evaluating the import statement
Definition: YBlock.cc:575
TableEntry * tentry
Definition: YBlock.h:87
Definition: SymbolTable.h:42
std::ostream & toXml(std::ostream &str, int indent) const
Definition: YBlock.cc:1062
void setType(constTypePtr type)
Definition: YBlock.cc:1227
bool isStatement() const
Definition: YBlock.h:207
Definition: Y2Function.h:71
virtual bool isBlock() const
Definition: YBlock.h:148
Definition: YStatement.h:465