#include <Y2SystemNamespace.h>
Public Member Functions | |
Y2SystemNamespace (Y2Namespace *local_ns) | |
virtual | ~Y2SystemNamespace () |
virtual const string | name () const |
what namespace do we implement | |
virtual const string | filename () const |
used for error reporting | |
virtual YCPValue | evaluate (bool) |
called when evaluating the import statement | |
virtual Y2Function * | createFunctionCall (const string name, constFunctionTypePtr type) |
void | useRemote (Y2ProgramComponent *sender) |
void | useLocal () |
Private Attributes | |
Y2Namespace * | m_local_ns |
Y2ProgramComponent * | m_remote_sender |
bool | m_use_remote |
vector< Y2SystemFunction * > | m_functions |
string | m_name |
Friends | |
class | Y2SystemFunction |
Y2SystemNamespace::Y2SystemNamespace | ( | Y2Namespace * | local_ns | ) |
Y2SystemNamespace::~Y2SystemNamespace | ( | ) | [virtual] |
References Y2Namespace::m_table.
Y2Function * Y2SystemNamespace::createFunctionCall | ( | const string | name, | |
constFunctionTypePtr | type | |||
) | [virtual] |
Creates a function call instance, which can be used to call a function from this namespace. The object is NOT owned anymore by this instance, the caller can (and should) delete it.
name | name of the required function | |
type | the type of the function (needed for overloading) |
Implements Y2Namespace.
References SymbolEntry::c_function, Y2Namespace::createFunctionCall(), SymbolTable::find(), m_functions, m_local_ns, m_name, m_remote_sender, m_use_remote, Y2Namespace::name(), TableEntry::sentry(), Y2Namespace::table(), y2debug, and Y2SystemFunction.
YCPValue Y2SystemNamespace::evaluate | ( | bool | cse | ) | [virtual] |
called when evaluating the import statement
Implements Y2Namespace.
References Y2Namespace::evaluate(), and m_local_ns.
const string Y2SystemNamespace::filename | ( | ) | const [virtual] |
const string Y2SystemNamespace::name | ( | ) | const [virtual] |
void Y2SystemNamespace::useLocal | ( | ) |
References m_functions, m_use_remote, and y2milestone.
void Y2SystemNamespace::useRemote | ( | Y2ProgramComponent * | sender | ) |
References m_functions, m_local_ns, m_name, m_remote_sender, m_use_remote, Y2Namespace::name(), Y2ProgramComponent::name(), and y2debug.
friend class Y2SystemFunction [friend] |
Referenced by createFunctionCall().
vector<Y2SystemFunction*> Y2SystemNamespace::m_functions [private] |
Referenced by createFunctionCall(), useLocal(), useRemote(), and Y2SystemNamespace().
Y2Namespace* Y2SystemNamespace::m_local_ns [private] |
Referenced by createFunctionCall(), evaluate(), and useRemote().
string Y2SystemNamespace::m_name [private] |
Referenced by createFunctionCall(), name(), useRemote(), and Y2SystemNamespace().
Referenced by createFunctionCall(), and useRemote().
bool Y2SystemNamespace::m_use_remote [private] |
Referenced by createFunctionCall(), useLocal(), and useRemote().