32 #ifndef _QORE_TYPEDHASHDECL_H 34 #define _QORE_TYPEDHASHDECL_H 37 class typed_hash_decl_private;
43 friend class typed_hash_decl_private;
51 DLLEXPORT
const QoreTypeInfo*
getTypeInfo(
bool or_nothing =
false)
const;
54 DLLEXPORT
void addMember(
const char* name,
const QoreTypeInfo* memberTypeInfo,
QoreValue init_val);
56 DLLEXPORT
const char* getName()
const;
58 DLLEXPORT
bool isSystem()
const;
67 typed_hash_decl_private* priv;
114 DLLEXPORT
extern const TypedHashDecl* hashdeclFilesystemInfo;
DLLLOCAL TypedHashDecl * operator*() const
implicit conversion to TypedHashDecl*
Definition: TypedHashDecl.h:83
DLLEXPORT ~TypedHashDecl()
deletes the object and frees all memory
DLLLOCAL TypedHashDeclHolder(TypedHashDecl *thd)
creates the object
Definition: TypedHashDecl.h:76
DLLLOCAL TypedHashDecl * operator->() const
implicit conversion to TypedHashDecl*
Definition: TypedHashDecl.h:88
allows for temporary storage of a TypedHashDecl pointer
Definition: TypedHashDecl.h:73
DLLLOCAL TypedHashDecl * release()
releases the TypedHashDecl*
Definition: TypedHashDecl.h:96
DLLEXPORT void addMember(const char *name, const QoreTypeInfo *memberTypeInfo, QoreValue init_val)
adds an element to a built-in hashdecl
The main value class in Qore, designed to be passed by value.
Definition: QoreValue.h:112
DLLEXPORT const QoreTypeInfo * getTypeInfo(bool or_nothing=false) const
returns the type info object for the hashdecl
DLLEXPORT ~TypedHashDeclHolder()
deletes the TypedHashDecl object if still managed
typed hash declaration
Definition: TypedHashDecl.h:42
DLLLOCAL TypedHashDecl * operator=(TypedHashDecl *nhd)
assign new TypedHashDecl value; any managed object is deleted if still managed