![]() |
Qore Programming Language - C/C++ Library 2.1.1
|
typed hash declaration More...
#include <TypedHashDecl.h>
Public Member Functions | |
| DLLEXPORT void | addMember (const char *name, const QoreTypeInfo *memberTypeInfo, QoreValue init_val) |
| adds an element to a built-in hashdecl | |
| DLLEXPORT QoreHashNode * | doRuntimeCast (const QoreHashNode *h, ExceptionSink *xsink) const |
| Performs a runtime cast and returns a typed hash if the has passed is compatible. | |
| DLLEXPORT bool | equal (const TypedHashDecl *other) const |
| returns true if the hashdecl passed as an arugment is equal to this hashdecl | |
| DLLEXPORT const QoreExternalMemberBase * | findLocalMember (const char *name) const |
| Finds the given local member or returns nullptr. | |
| DLLEXPORT const char * | getModuleName () const |
| Returns the module name the class was loaded from or nullptr if it is a builtin class. | |
| DLLEXPORT const char * | getName () const |
| returns the name of the typed hash | |
| DLLEXPORT const QoreNamespace * | getNamespace () const |
| Returns the namespace owning the typed hash declaration. | |
| DLLEXPORT std::string | getNamespacePath (bool anchored=false) const |
| returns the full namespace path of the class | |
| DLLEXPORT const QoreExternalProgramLocation * | getSourceLocation () const |
| returns the source location of the typed hash (hashdecl) definition | |
| DLLEXPORT const QoreTypeInfo * | getTypeInfo (bool or_nothing=false) const |
| returns the type info object for the hashdecl | |
| DLLEXPORT bool | isPublic () const |
| returns true if the typed hash has the public (export) flag set | |
| DLLEXPORT bool | isSystem () const |
| returns true if the typed hash is a builtin typed hash | |
Protected Member Functions | |
| DLLEXPORT | ~TypedHashDecl () |
| deletes the object and frees all memory | |
typed hash declaration
| DLLEXPORT QoreHashNode * TypedHashDecl::doRuntimeCast | ( | const QoreHashNode * | h, |
| ExceptionSink * | xsink ) const |
Performs a runtime cast and returns a typed hash if the has passed is compatible.
The caller owns any reference retuned. Throws a Qore-language exception if the hash is not compatible with with the typed hash
| DLLEXPORT bool TypedHashDecl::equal | ( | const TypedHashDecl * | other | ) | const |
returns true if the hashdecl passed as an arugment is equal to this hashdecl
| DLLEXPORT const QoreExternalMemberBase * TypedHashDecl::findLocalMember | ( | const char * | name | ) | const |
Finds the given local member or returns nullptr.
| DLLEXPORT const char * TypedHashDecl::getModuleName | ( | ) | const |
Returns the module name the class was loaded from or nullptr if it is a builtin class.
| DLLEXPORT const QoreNamespace * TypedHashDecl::getNamespace | ( | ) | const |
Returns the namespace owning the typed hash declaration.
| DLLEXPORT std::string TypedHashDecl::getNamespacePath | ( | bool | anchored = false | ) | const |
returns the full namespace path of the class
| anchored | if true then the path will always be prefixed by "::" for the unnamed root namespace |
| DLLEXPORT const QoreExternalProgramLocation * TypedHashDecl::getSourceLocation | ( | ) | const |
returns the source location of the typed hash (hashdecl) definition
| DLLEXPORT bool TypedHashDecl::isPublic | ( | ) | const |
returns true if the typed hash has the public (export) flag set