\hypertarget{class_qore_1_1zzz8objectzzz9}{}\section{Qore\+:\+:zzz8objectzzz9 Class Reference}
\label{class_qore_1_1zzz8objectzzz9}\index{Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}}


Methods in this pseudo-\/class can be executed on \hyperlink{container_data_types_object}{objects}.  




Inheritance diagram for Qore\+:\+:zzz8objectzzz9\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=143pt]{class_qore_1_1zzz8objectzzz9__inherit__graph}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{group__type__conversion__functions_gacf16b4126b795f4b6933ef3425cadae3}{string} \hyperlink{class_qore_1_1zzz8objectzzz9_a284be71278d0b081544ba675a3d1ead5}{class\+Name} ()
\begin{DoxyCompactList}\small\item\em Returns the class name of the object. \end{DoxyCompactList}\item 
bool \hyperlink{class_qore_1_1zzz8objectzzz9_adf265b8dbe44865f7d6f28bb77576e74}{complex\+Type} ()
\begin{DoxyCompactList}\small\item\em returns \hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} in all cases for objects \end{DoxyCompactList}\item 
bool \hyperlink{class_qore_1_1zzz8objectzzz9_a98fdee3ab7365dcaad9ea0499cf999a6}{empty} ()
\begin{DoxyCompactList}\small\item\em Returns \hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} if the object has no public or private members, \hyperlink{group__boolean__constants_ga9da2b9a8003cd3788e48305f8a00540f}{False} if it does. \end{DoxyCompactList}\item 
\+\_\+\+\_\+7\+\_\+ \hyperlink{group__type__conversion__functions_gacf16b4126b795f4b6933ef3425cadae3}{string} \hyperlink{class_qore_1_1zzz8objectzzz9_ac869a20f8a709e65f6cacd2002f93603}{first\+Key} ()
\begin{DoxyCompactList}\small\item\em Returns the first member name in the object or \hyperlink{basic_data_types_nothing}{N\+O\+T\+H\+I\+NG} if the object has no members; if called from outside the object, the first public member name is returned (if any) \end{DoxyCompactList}\item 
bool \hyperlink{class_qore_1_1zzz8objectzzz9_a53db2b90a03e13947b32a34bfddf553b}{has\+Callable\+Method} (\hyperlink{group__type__conversion__functions_gacf16b4126b795f4b6933ef3425cadae3}{string} name)
\begin{DoxyCompactList}\small\item\em Returns \hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} if the given method exists (can be non-\/static or static) and is callable from the current context. \end{DoxyCompactList}\item 
bool \hyperlink{class_qore_1_1zzz8objectzzz9_a21ad831080f7d554f84c849e92e918d0}{has\+Callable\+Normal\+Method} (\hyperlink{group__type__conversion__functions_gacf16b4126b795f4b6933ef3425cadae3}{string} name)
\begin{DoxyCompactList}\small\item\em Returns \hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} if the given non-\/static method exists and is callable from the current context. \end{DoxyCompactList}\item 
bool \hyperlink{class_qore_1_1zzz8objectzzz9_a53b9a99bec7d7372eddd523303c5f1e3}{has\+Callable\+Static\+Method} (\hyperlink{group__type__conversion__functions_gacf16b4126b795f4b6933ef3425cadae3}{string} name)
\begin{DoxyCompactList}\small\item\em Returns \hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} if the given static method exists and is callable from the current context. \end{DoxyCompactList}\item 
bool \hyperlink{class_qore_1_1zzz8objectzzz9_ae39303b6bbe6686472aec8cabe8b9ea5}{is\+System} ()
\begin{DoxyCompactList}\small\item\em Returns \hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} if the object is a system object (ie a constant object like \hyperlink{group__io__constants_ga0cfa7aea34f3c921036623600e42b21f}{stdin}, etc), \hyperlink{group__boolean__constants_ga9da2b9a8003cd3788e48305f8a00540f}{False} if not. \end{DoxyCompactList}\item 
\hyperlink{class_qore_1_1_abstract_iterator}{Abstract\+Iterator} \hyperlink{class_qore_1_1zzz8objectzzz9_a7f5a44cdfd0b417a750deafa46980ce8}{iterator} ()
\begin{DoxyCompactList}\small\item\em Returns an \hyperlink{class_qore_1_1_object_iterator}{Object\+Iterator} object for the object\textquotesingle{}s members. \end{DoxyCompactList}\item 
\hyperlink{class_qore_1_1_object_key_iterator}{Object\+Key\+Iterator} \hyperlink{class_qore_1_1zzz8objectzzz9_a473b74b10e5acd871ae6cc996e7427a6}{key\+Iterator} ()
\begin{DoxyCompactList}\small\item\em Returns a \hyperlink{class_qore_1_1_object_key_iterator}{Object\+Key\+Iterator} object for the object, iterating the object\textquotesingle{}s members. \end{DoxyCompactList}\item 
\hyperlink{group__type__conversion__functions_ga4b52a1cbee7a3aed46c32cb0a938629c}{list}$<$ \hyperlink{group__type__conversion__functions_gacf16b4126b795f4b6933ef3425cadae3}{string} $>$ \hyperlink{class_qore_1_1zzz8objectzzz9_a5e962eaf47dbfc60312f5f6c4ba500ad}{keys} ()
\begin{DoxyCompactList}\small\item\em Returns a list of member names of the object; if called from outside the object, only public members are returned. \end{DoxyCompactList}\item 
\+\_\+\+\_\+7\+\_\+ \hyperlink{group__type__conversion__functions_gacf16b4126b795f4b6933ef3425cadae3}{string} \hyperlink{class_qore_1_1zzz8objectzzz9_aef967439709a41621f8f16d723272eb6}{last\+Key} ()
\begin{DoxyCompactList}\small\item\em Returns the last member name in the object or \hyperlink{basic_data_types_nothing}{N\+O\+T\+H\+I\+NG} if the object has no members; if called from outside the object, the last public member name is returned (if any) \end{DoxyCompactList}\item 
\hyperlink{class_qore_1_1_object_pair_iterator}{Object\+Pair\+Iterator} \hyperlink{class_qore_1_1zzz8objectzzz9_a7d6df627d80aa7f74c7e895fb352c837}{pair\+Iterator} ()
\begin{DoxyCompactList}\small\item\em Returns a \hyperlink{class_qore_1_1_object_pair_iterator}{Object\+Pair\+Iterator} object for the object\textquotesingle{}s members. \end{DoxyCompactList}\item 
\hyperlink{group__type__conversion__functions_ga2de8717e92c5f97ccc6511f6062d6502}{int} \hyperlink{class_qore_1_1zzz8objectzzz9_abd3a229694c461d6000515c334c3530a}{size} ()
\begin{DoxyCompactList}\small\item\em Returns the number of members in the object, public and private. \end{DoxyCompactList}\item 
bool \hyperlink{class_qore_1_1zzz8objectzzz9_a82b800b5b777cfe079f43b674b856ae4}{sizep} ()
\begin{DoxyCompactList}\small\item\em Returns \hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} since objects can return a non-\/zero size. \end{DoxyCompactList}\item 
\hyperlink{group__type__conversion__functions_ga2de8717e92c5f97ccc6511f6062d6502}{int} \hyperlink{class_qore_1_1zzz8objectzzz9_acc70957477ea8677a95ebeb04636459e}{type\+Code} ()
\begin{DoxyCompactList}\small\item\em Returns \hyperlink{group__type__code__constants_gac9fe4267bd9924d2f99d19304aaf88c4}{Qore\+::\+N\+T\+\_\+\+O\+B\+J\+E\+CT}. \end{DoxyCompactList}\item 
\hyperlink{group__type__conversion__functions_gacf16b4126b795f4b6933ef3425cadae3}{string} \hyperlink{class_qore_1_1zzz8objectzzz9_a0702bbe59ecc54c7eed8c16550a010ed}{unique\+Hash} ()
\begin{DoxyCompactList}\small\item\em Return a unique string for the data independent of the content. \end{DoxyCompactList}\item 
bool \hyperlink{class_qore_1_1zzz8objectzzz9_ab017d670419423d5a3620fcada27d935}{val} ()
\begin{DoxyCompactList}\small\item\em Returns \hyperlink{group__boolean__constants_ga9da2b9a8003cd3788e48305f8a00540f}{False} if the object has no public or private members, \hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} if it does. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Methods in this pseudo-\/class can be executed on \hyperlink{container_data_types_object}{objects}. 

\subsection{Member Function Documentation}
\mbox{\Hypertarget{class_qore_1_1zzz8objectzzz9_a284be71278d0b081544ba675a3d1ead5}\label{class_qore_1_1zzz8objectzzz9_a284be71278d0b081544ba675a3d1ead5}} 
\index{Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}!class\+Name@{class\+Name}}
\index{class\+Name@{class\+Name}!Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}}
\subsubsection{\texorpdfstring{class\+Name()}{className()}}
{\footnotesize\ttfamily \hyperlink{group__type__conversion__functions_gacf16b4126b795f4b6933ef3425cadae3}{string} Qore\+::zzz8objectzzz9\+::class\+Name (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Returns the class name of the object. 

\begin{DoxyReturn}{Returns}
the class name of the object
\end{DoxyReturn}
\begin{DoxyParagraph}{Code Flags\+:}
\hyperlink{code_flags_CONSTANT}{C\+O\+N\+S\+T\+A\+NT}
\end{DoxyParagraph}
\begin{DoxyParagraph}{Example\+:}

\begin{DoxyCode}
string cn = o.className();
\end{DoxyCode}

\end{DoxyParagraph}
\begin{DoxyNote}{Note}
equivalent to \hyperlink{group__misc__functions_gaa9a0d3f277ef8cbdc99fe146dd3db49b}{get\+\_\+class\+\_\+name()} 
\end{DoxyNote}
\mbox{\Hypertarget{class_qore_1_1zzz8objectzzz9_adf265b8dbe44865f7d6f28bb77576e74}\label{class_qore_1_1zzz8objectzzz9_adf265b8dbe44865f7d6f28bb77576e74}} 
\index{Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}!complex\+Type@{complex\+Type}}
\index{complex\+Type@{complex\+Type}!Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}}
\subsubsection{\texorpdfstring{complex\+Type()}{complexType()}}
{\footnotesize\ttfamily bool Qore\+::zzz8objectzzz9\+::complex\+Type (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



returns \hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} in all cases for objects 

\begin{DoxyParagraph}{Code Flags\+:}
\hyperlink{code_flags_CONSTANT}{C\+O\+N\+S\+T\+A\+NT}
\end{DoxyParagraph}
\begin{DoxyParagraph}{Example\+:}

\begin{DoxyCode}
bool b = n.complexType();
\end{DoxyCode}

\end{DoxyParagraph}
\begin{DoxyReturn}{Returns}
\hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} in all cases for objects
\end{DoxyReturn}
\begin{DoxySeeAlso}{See also}

\begin{DoxyItemize}
\item \hyperlink{class_qore_1_1zzz8valuezzz9_a74179a71cd4d02fd8367d469df86edfc}{Qore\+::zzz8valuezzz9\+::full\+Type()}
\end{DoxyItemize}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
Qore 0.\+8.\+13 
\end{DoxySince}
\mbox{\Hypertarget{class_qore_1_1zzz8objectzzz9_a98fdee3ab7365dcaad9ea0499cf999a6}\label{class_qore_1_1zzz8objectzzz9_a98fdee3ab7365dcaad9ea0499cf999a6}} 
\index{Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}!empty@{empty}}
\index{empty@{empty}!Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}}
\subsubsection{\texorpdfstring{empty()}{empty()}}
{\footnotesize\ttfamily bool Qore\+::zzz8objectzzz9\+::empty (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Returns \hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} if the object has no public or private members, \hyperlink{group__boolean__constants_ga9da2b9a8003cd3788e48305f8a00540f}{False} if it does. 

The opposite of \hyperlink{class_qore_1_1zzz8objectzzz9_ab017d670419423d5a3620fcada27d935}{Qore\+::zzz8objectzzz9\+::val()}

\begin{DoxyReturn}{Returns}
\hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} if the object has no public or private members, \hyperlink{group__boolean__constants_ga9da2b9a8003cd3788e48305f8a00540f}{False} if it does
\end{DoxyReturn}
\begin{DoxyParagraph}{Code Flags\+:}
\hyperlink{code_flags_RET_VALUE_ONLY}{R\+E\+T\+\_\+\+V\+A\+L\+U\+E\+\_\+\+O\+N\+LY}
\end{DoxyParagraph}
\begin{DoxyParagraph}{Example\+:}

\begin{DoxyCode}
bool b = o.empty();
\end{DoxyCode}
 
\end{DoxyParagraph}
\mbox{\Hypertarget{class_qore_1_1zzz8objectzzz9_ac869a20f8a709e65f6cacd2002f93603}\label{class_qore_1_1zzz8objectzzz9_ac869a20f8a709e65f6cacd2002f93603}} 
\index{Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}!first\+Key@{first\+Key}}
\index{first\+Key@{first\+Key}!Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}}
\subsubsection{\texorpdfstring{first\+Key()}{firstKey()}}
{\footnotesize\ttfamily \+\_\+\+\_\+7\+\_\+ \hyperlink{group__type__conversion__functions_gacf16b4126b795f4b6933ef3425cadae3}{string} Qore\+::zzz8objectzzz9\+::first\+Key (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Returns the first member name in the object or \hyperlink{basic_data_types_nothing}{N\+O\+T\+H\+I\+NG} if the object has no members; if called from outside the object, the first public member name is returned (if any) 

\begin{DoxyReturn}{Returns}
the first member name in the object or \hyperlink{basic_data_types_nothing}{N\+O\+T\+H\+I\+NG} if the object has no members; if called from outside the object, the first public member name is returned (if any)
\end{DoxyReturn}
\begin{DoxyParagraph}{Code Flags\+:}
\hyperlink{code_flags_RET_VALUE_ONLY}{R\+E\+T\+\_\+\+V\+A\+L\+U\+E\+\_\+\+O\+N\+LY}
\end{DoxyParagraph}
\begin{DoxyParagraph}{Example\+:}

\begin{DoxyCode}
*string n = o.firstKey();
\end{DoxyCode}

\end{DoxyParagraph}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_qore_1_1zzz8objectzzz9_aef967439709a41621f8f16d723272eb6}{Qore\+::zzz8objectzzz9\+::last\+Key()} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_qore_1_1zzz8objectzzz9_a53db2b90a03e13947b32a34bfddf553b}\label{class_qore_1_1zzz8objectzzz9_a53db2b90a03e13947b32a34bfddf553b}} 
\index{Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}!has\+Callable\+Method@{has\+Callable\+Method}}
\index{has\+Callable\+Method@{has\+Callable\+Method}!Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}}
\subsubsection{\texorpdfstring{has\+Callable\+Method()}{hasCallableMethod()}}
{\footnotesize\ttfamily bool Qore\+::zzz8objectzzz9\+::has\+Callable\+Method (\begin{DoxyParamCaption}\item[{\hyperlink{group__type__conversion__functions_gacf16b4126b795f4b6933ef3425cadae3}{string}}]{name }\end{DoxyParamCaption})}



Returns \hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} if the given method exists (can be non-\/static or static) and is callable from the current context. 

\begin{DoxyParagraph}{Code Flags\+:}
\hyperlink{code_flags_CONSTANT}{C\+O\+N\+S\+T\+A\+NT}
\end{DoxyParagraph}
\begin{DoxyParagraph}{Example\+:}

\begin{DoxyCode}
bool b = obj.hasCallableMethod(\textcolor{stringliteral}{"getStatus"});
\end{DoxyCode}

\end{DoxyParagraph}
\begin{DoxyReturn}{Returns}
\hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} if the given method exists (can be non-\/static or static) and is callable from the current context
\end{DoxyReturn}
\begin{DoxySeeAlso}{See also}

\begin{DoxyItemize}
\item \hyperlink{class_qore_1_1zzz8objectzzz9_a21ad831080f7d554f84c849e92e918d0}{has\+Callable\+Normal\+Method()}
\item \hyperlink{class_qore_1_1zzz8objectzzz9_a53b9a99bec7d7372eddd523303c5f1e3}{has\+Callable\+Static\+Method}
\end{DoxyItemize}
\end{DoxySeeAlso}
\begin{DoxyNote}{Note}

\begin{DoxyItemize}
\item returns \hyperlink{group__boolean__constants_ga9da2b9a8003cd3788e48305f8a00540f}{False} if the method doesn\textquotesingle{}t exist or is not callable due to being private, for example
\item if a \hyperlink{qore_classes_methodGate_methods}{method\+Gate() method} exists but no explicit definition of the given method exists, then this pseudo-\/method will return \hyperlink{group__boolean__constants_ga9da2b9a8003cd3788e48305f8a00540f}{False}, but any method name can be called on the object due to the existence of the \hyperlink{qore_classes_methodGate_methods}{method\+Gate() method}
\item this pseudo-\/method will also return \hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} if the given method exists and is accessible in an inherited class
\end{DoxyItemize}
\end{DoxyNote}
\begin{DoxySince}{Since}
Qore 0.\+8.\+8 
\end{DoxySince}
\mbox{\Hypertarget{class_qore_1_1zzz8objectzzz9_a21ad831080f7d554f84c849e92e918d0}\label{class_qore_1_1zzz8objectzzz9_a21ad831080f7d554f84c849e92e918d0}} 
\index{Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}!has\+Callable\+Normal\+Method@{has\+Callable\+Normal\+Method}}
\index{has\+Callable\+Normal\+Method@{has\+Callable\+Normal\+Method}!Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}}
\subsubsection{\texorpdfstring{has\+Callable\+Normal\+Method()}{hasCallableNormalMethod()}}
{\footnotesize\ttfamily bool Qore\+::zzz8objectzzz9\+::has\+Callable\+Normal\+Method (\begin{DoxyParamCaption}\item[{\hyperlink{group__type__conversion__functions_gacf16b4126b795f4b6933ef3425cadae3}{string}}]{name }\end{DoxyParamCaption})}



Returns \hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} if the given non-\/static method exists and is callable from the current context. 

\begin{DoxyParagraph}{Code Flags\+:}
\hyperlink{code_flags_CONSTANT}{C\+O\+N\+S\+T\+A\+NT}
\end{DoxyParagraph}
\begin{DoxyParagraph}{Example\+:}

\begin{DoxyCode}
bool b = obj.hasCallableNormalMethod(\textcolor{stringliteral}{"getStatus"});
\end{DoxyCode}

\end{DoxyParagraph}
\begin{DoxyReturn}{Returns}
\hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} if the given non-\/static method exists and is callable from the current context
\end{DoxyReturn}
\begin{DoxySeeAlso}{See also}

\begin{DoxyItemize}
\item \hyperlink{class_qore_1_1zzz8objectzzz9_a53db2b90a03e13947b32a34bfddf553b}{has\+Callable\+Method()}
\item \hyperlink{class_qore_1_1zzz8objectzzz9_a53b9a99bec7d7372eddd523303c5f1e3}{has\+Callable\+Static\+Method}
\end{DoxyItemize}
\end{DoxySeeAlso}
\begin{DoxyNote}{Note}

\begin{DoxyItemize}
\item returns \hyperlink{group__boolean__constants_ga9da2b9a8003cd3788e48305f8a00540f}{False} if the method doesn\textquotesingle{}t exist or is not callable due to being private, for example
\item if a \hyperlink{qore_classes_methodGate_methods}{method\+Gate() method} exists but no explicit definition of the given method exists, then this pseudo-\/method will return \hyperlink{group__boolean__constants_ga9da2b9a8003cd3788e48305f8a00540f}{False}, but any method name can be called on the object due to the existence of the \hyperlink{qore_classes_methodGate_methods}{method\+Gate() method}
\item this pseudo-\/method will also return \hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} if the given method exists and is accessible in an inherited class
\end{DoxyItemize}
\end{DoxyNote}
\begin{DoxySince}{Since}
Qore 0.\+8.\+8 
\end{DoxySince}
\mbox{\Hypertarget{class_qore_1_1zzz8objectzzz9_a53b9a99bec7d7372eddd523303c5f1e3}\label{class_qore_1_1zzz8objectzzz9_a53b9a99bec7d7372eddd523303c5f1e3}} 
\index{Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}!has\+Callable\+Static\+Method@{has\+Callable\+Static\+Method}}
\index{has\+Callable\+Static\+Method@{has\+Callable\+Static\+Method}!Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}}
\subsubsection{\texorpdfstring{has\+Callable\+Static\+Method()}{hasCallableStaticMethod()}}
{\footnotesize\ttfamily bool Qore\+::zzz8objectzzz9\+::has\+Callable\+Static\+Method (\begin{DoxyParamCaption}\item[{\hyperlink{group__type__conversion__functions_gacf16b4126b795f4b6933ef3425cadae3}{string}}]{name }\end{DoxyParamCaption})}



Returns \hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} if the given static method exists and is callable from the current context. 

\begin{DoxyParagraph}{Code Flags\+:}
\hyperlink{code_flags_CONSTANT}{C\+O\+N\+S\+T\+A\+NT}
\end{DoxyParagraph}
\begin{DoxyParagraph}{Example\+:}

\begin{DoxyCode}
bool b = obj.hasCallableStaticMethod(\textcolor{stringliteral}{"getStatus"});
\end{DoxyCode}

\end{DoxyParagraph}
\begin{DoxyReturn}{Returns}
\hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} if the given static method exists and is callable from the current context
\end{DoxyReturn}
\begin{DoxySeeAlso}{See also}

\begin{DoxyItemize}
\item \hyperlink{class_qore_1_1zzz8objectzzz9_a53db2b90a03e13947b32a34bfddf553b}{has\+Callable\+Method()}
\item \hyperlink{class_qore_1_1zzz8objectzzz9_a53b9a99bec7d7372eddd523303c5f1e3}{has\+Callable\+Static\+Method}
\end{DoxyItemize}
\end{DoxySeeAlso}
\begin{DoxyNote}{Note}

\begin{DoxyItemize}
\item returns \hyperlink{group__boolean__constants_ga9da2b9a8003cd3788e48305f8a00540f}{False} if the static method doesn\textquotesingle{}t exist or is not callable due to being private, for example
\item this pseudo-\/method will also return \hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} if the given static method exists and is accessible in an inherited class
\end{DoxyItemize}
\end{DoxyNote}
\begin{DoxySince}{Since}
Qore 0.\+8.\+8 
\end{DoxySince}
\mbox{\Hypertarget{class_qore_1_1zzz8objectzzz9_ae39303b6bbe6686472aec8cabe8b9ea5}\label{class_qore_1_1zzz8objectzzz9_ae39303b6bbe6686472aec8cabe8b9ea5}} 
\index{Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}!is\+System@{is\+System}}
\index{is\+System@{is\+System}!Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}}
\subsubsection{\texorpdfstring{is\+System()}{isSystem()}}
{\footnotesize\ttfamily bool Qore\+::zzz8objectzzz9\+::is\+System (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Returns \hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} if the object is a system object (ie a constant object like \hyperlink{group__io__constants_ga0cfa7aea34f3c921036623600e42b21f}{stdin}, etc), \hyperlink{group__boolean__constants_ga9da2b9a8003cd3788e48305f8a00540f}{False} if not. 

\begin{DoxyReturn}{Returns}
\hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} if the object is a system object (ie a constant object like \hyperlink{group__io__constants_ga0cfa7aea34f3c921036623600e42b21f}{stdin}, etc), \hyperlink{group__boolean__constants_ga9da2b9a8003cd3788e48305f8a00540f}{False} if not
\end{DoxyReturn}
\begin{DoxyParagraph}{Code Flags\+:}
\hyperlink{code_flags_CONSTANT}{C\+O\+N\+S\+T\+A\+NT}
\end{DoxyParagraph}
\begin{DoxyParagraph}{Example\+:}

\begin{DoxyCode}
bool b = i.isSystem();
\end{DoxyCode}
 
\end{DoxyParagraph}
\mbox{\Hypertarget{class_qore_1_1zzz8objectzzz9_a7f5a44cdfd0b417a750deafa46980ce8}\label{class_qore_1_1zzz8objectzzz9_a7f5a44cdfd0b417a750deafa46980ce8}} 
\index{Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}!iterator@{iterator}}
\index{iterator@{iterator}!Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}}
\subsubsection{\texorpdfstring{iterator()}{iterator()}}
{\footnotesize\ttfamily \hyperlink{class_qore_1_1_abstract_iterator}{Abstract\+Iterator} Qore\+::zzz8objectzzz9\+::iterator (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Returns an \hyperlink{class_qore_1_1_object_iterator}{Object\+Iterator} object for the object\textquotesingle{}s members. 

\begin{DoxyReturn}{Returns}
an \hyperlink{class_qore_1_1_object_iterator}{Object\+Iterator} object for the object\textquotesingle{}s members
\end{DoxyReturn}
\begin{DoxyParagraph}{Code Flags\+:}
\hyperlink{code_flags_CONSTANT}{C\+O\+N\+S\+T\+A\+NT}
\end{DoxyParagraph}
\begin{DoxyParagraph}{Example\+:}

\begin{DoxyCode}
map \hyperlink{group__string__functions_ga32070517a9f8a70a32ef48f83a6f128e}{printf}(\textcolor{stringliteral}{"+ %y\(\backslash\)n"}, $1), obj.iterator();
\end{DoxyCode}

\end{DoxyParagraph}
\begin{DoxySince}{Since}
Qore 0.\+8.\+6 
\end{DoxySince}
\mbox{\Hypertarget{class_qore_1_1zzz8objectzzz9_a473b74b10e5acd871ae6cc996e7427a6}\label{class_qore_1_1zzz8objectzzz9_a473b74b10e5acd871ae6cc996e7427a6}} 
\index{Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}!key\+Iterator@{key\+Iterator}}
\index{key\+Iterator@{key\+Iterator}!Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}}
\subsubsection{\texorpdfstring{key\+Iterator()}{keyIterator()}}
{\footnotesize\ttfamily \hyperlink{class_qore_1_1_object_key_iterator}{Object\+Key\+Iterator} Qore\+::zzz8objectzzz9\+::key\+Iterator (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Returns a \hyperlink{class_qore_1_1_object_key_iterator}{Object\+Key\+Iterator} object for the object, iterating the object\textquotesingle{}s members. 

\begin{DoxyReturn}{Returns}
a \hyperlink{class_qore_1_1_object_key_iterator}{Object\+Key\+Iterator} object for the object, iterating the object\textquotesingle{}s members
\end{DoxyReturn}
\begin{DoxyParagraph}{Code Flags\+:}
\hyperlink{code_flags_CONSTANT}{C\+O\+N\+S\+T\+A\+NT}
\end{DoxyParagraph}
\begin{DoxyParagraph}{Example\+:}

\begin{DoxyCode}
map \hyperlink{group__string__functions_ga32070517a9f8a70a32ef48f83a6f128e}{printf}(\textcolor{stringliteral}{"+ %s\(\backslash\)n"}, $1), obj.keyIterator();
\end{DoxyCode}

\end{DoxyParagraph}
\begin{DoxySince}{Since}
Qore 0.\+8.\+6.\+2 
\end{DoxySince}
\mbox{\Hypertarget{class_qore_1_1zzz8objectzzz9_a5e962eaf47dbfc60312f5f6c4ba500ad}\label{class_qore_1_1zzz8objectzzz9_a5e962eaf47dbfc60312f5f6c4ba500ad}} 
\index{Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}!keys@{keys}}
\index{keys@{keys}!Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}}
\subsubsection{\texorpdfstring{keys()}{keys()}}
{\footnotesize\ttfamily \hyperlink{group__type__conversion__functions_ga4b52a1cbee7a3aed46c32cb0a938629c}{list}$<$\hyperlink{group__type__conversion__functions_gacf16b4126b795f4b6933ef3425cadae3}{string}$>$ Qore\+::zzz8objectzzz9\+::keys (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Returns a list of member names of the object; if called from outside the object, only public members are returned. 

\begin{DoxyReturn}{Returns}
a list of member names of the object; if called from outside the object, only public members are returned
\end{DoxyReturn}
\begin{DoxyParagraph}{Code Flags\+:}
\hyperlink{code_flags_RET_VALUE_ONLY}{R\+E\+T\+\_\+\+V\+A\+L\+U\+E\+\_\+\+O\+N\+LY}
\end{DoxyParagraph}
\begin{DoxyParagraph}{Example\+:}

\begin{DoxyCode}
list<string> l = o.keys();
\end{DoxyCode}
 
\end{DoxyParagraph}
\mbox{\Hypertarget{class_qore_1_1zzz8objectzzz9_aef967439709a41621f8f16d723272eb6}\label{class_qore_1_1zzz8objectzzz9_aef967439709a41621f8f16d723272eb6}} 
\index{Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}!last\+Key@{last\+Key}}
\index{last\+Key@{last\+Key}!Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}}
\subsubsection{\texorpdfstring{last\+Key()}{lastKey()}}
{\footnotesize\ttfamily \+\_\+\+\_\+7\+\_\+ \hyperlink{group__type__conversion__functions_gacf16b4126b795f4b6933ef3425cadae3}{string} Qore\+::zzz8objectzzz9\+::last\+Key (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Returns the last member name in the object or \hyperlink{basic_data_types_nothing}{N\+O\+T\+H\+I\+NG} if the object has no members; if called from outside the object, the last public member name is returned (if any) 

\begin{DoxyReturn}{Returns}
the last member name in the object or \hyperlink{basic_data_types_nothing}{N\+O\+T\+H\+I\+NG} if the object has no members; if called from outside the object, the last public member name is returned (if any)
\end{DoxyReturn}
\begin{DoxyParagraph}{Code Flags\+:}
\hyperlink{code_flags_RET_VALUE_ONLY}{R\+E\+T\+\_\+\+V\+A\+L\+U\+E\+\_\+\+O\+N\+LY}
\end{DoxyParagraph}
\begin{DoxyParagraph}{Example\+:}

\begin{DoxyCode}
*string n = o.lastKey();
\end{DoxyCode}

\end{DoxyParagraph}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_qore_1_1zzz8objectzzz9_ac869a20f8a709e65f6cacd2002f93603}{Qore\+::zzz8objectzzz9\+::first\+Key()} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_qore_1_1zzz8objectzzz9_a7d6df627d80aa7f74c7e895fb352c837}\label{class_qore_1_1zzz8objectzzz9_a7d6df627d80aa7f74c7e895fb352c837}} 
\index{Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}!pair\+Iterator@{pair\+Iterator}}
\index{pair\+Iterator@{pair\+Iterator}!Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}}
\subsubsection{\texorpdfstring{pair\+Iterator()}{pairIterator()}}
{\footnotesize\ttfamily \hyperlink{class_qore_1_1_object_pair_iterator}{Object\+Pair\+Iterator} Qore\+::zzz8objectzzz9\+::pair\+Iterator (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Returns a \hyperlink{class_qore_1_1_object_pair_iterator}{Object\+Pair\+Iterator} object for the object\textquotesingle{}s members. 

\begin{DoxyReturn}{Returns}
a \hyperlink{class_qore_1_1_object_pair_iterator}{Object\+Pair\+Iterator} object for the object\textquotesingle{}s members
\end{DoxyReturn}
\begin{DoxyParagraph}{Code Flags\+:}
\hyperlink{code_flags_CONSTANT}{C\+O\+N\+S\+T\+A\+NT}
\end{DoxyParagraph}
\begin{DoxyParagraph}{Example\+:}

\begin{DoxyCode}
map \hyperlink{group__string__functions_ga32070517a9f8a70a32ef48f83a6f128e}{printf}(\textcolor{stringliteral}{"+ %s\(\backslash\)n"}, $1), obj.pairIterator();
\end{DoxyCode}

\end{DoxyParagraph}
\begin{DoxySince}{Since}
Qore 0.\+8.\+6.\+2 
\end{DoxySince}
\mbox{\Hypertarget{class_qore_1_1zzz8objectzzz9_abd3a229694c461d6000515c334c3530a}\label{class_qore_1_1zzz8objectzzz9_abd3a229694c461d6000515c334c3530a}} 
\index{Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}!size@{size}}
\index{size@{size}!Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}}
\subsubsection{\texorpdfstring{size()}{size()}}
{\footnotesize\ttfamily \hyperlink{group__type__conversion__functions_ga2de8717e92c5f97ccc6511f6062d6502}{int} Qore\+::zzz8objectzzz9\+::size (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Returns the number of members in the object, public and private. 

\begin{DoxyReturn}{Returns}
the number of members in the object, public and private
\end{DoxyReturn}
\begin{DoxyParagraph}{Code Flags\+:}
\hyperlink{code_flags_RET_VALUE_ONLY}{R\+E\+T\+\_\+\+V\+A\+L\+U\+E\+\_\+\+O\+N\+LY}
\end{DoxyParagraph}
\begin{DoxyParagraph}{Example\+:}

\begin{DoxyCode}
int num = o.size();
\end{DoxyCode}

\end{DoxyParagraph}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_qore_1_1zzz8objectzzz9_a82b800b5b777cfe079f43b674b856ae4}{Qore\+::zzz8objectzzz9\+::sizep()} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{class_qore_1_1zzz8objectzzz9_a82b800b5b777cfe079f43b674b856ae4}\label{class_qore_1_1zzz8objectzzz9_a82b800b5b777cfe079f43b674b856ae4}} 
\index{Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}!sizep@{sizep}}
\index{sizep@{sizep}!Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}}
\subsubsection{\texorpdfstring{sizep()}{sizep()}}
{\footnotesize\ttfamily bool Qore\+::zzz8objectzzz9\+::sizep (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Returns \hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} since objects can return a non-\/zero size. 

\begin{DoxyParagraph}{Code Flags\+:}
\hyperlink{code_flags_CONSTANT}{C\+O\+N\+S\+T\+A\+NT}
\end{DoxyParagraph}
\begin{DoxyReturn}{Returns}
\hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} since objects can return a non-\/zero size
\end{DoxyReturn}
\begin{DoxySeeAlso}{See also}
\hyperlink{class_qore_1_1zzz8objectzzz9_abd3a229694c461d6000515c334c3530a}{Qore\+::zzz8objectzzz9\+::size()}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
Qore 0.\+8.\+9 
\end{DoxySince}
\mbox{\Hypertarget{class_qore_1_1zzz8objectzzz9_acc70957477ea8677a95ebeb04636459e}\label{class_qore_1_1zzz8objectzzz9_acc70957477ea8677a95ebeb04636459e}} 
\index{Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}!type\+Code@{type\+Code}}
\index{type\+Code@{type\+Code}!Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}}
\subsubsection{\texorpdfstring{type\+Code()}{typeCode()}}
{\footnotesize\ttfamily \hyperlink{group__type__conversion__functions_ga2de8717e92c5f97ccc6511f6062d6502}{int} Qore\+::zzz8objectzzz9\+::type\+Code (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Returns \hyperlink{group__type__code__constants_gac9fe4267bd9924d2f99d19304aaf88c4}{Qore\+::\+N\+T\+\_\+\+O\+B\+J\+E\+CT}. 

\begin{DoxyReturn}{Returns}
\hyperlink{group__type__code__constants_gac9fe4267bd9924d2f99d19304aaf88c4}{Qore\+::\+N\+T\+\_\+\+O\+B\+J\+E\+CT}
\end{DoxyReturn}
\begin{DoxyParagraph}{Code Flags\+:}
\hyperlink{code_flags_CONSTANT}{C\+O\+N\+S\+T\+A\+NT}
\end{DoxyParagraph}
\begin{DoxyParagraph}{Example\+:}

\begin{DoxyCode}
switch (o.typeCode()) \{
    case Qore::NT\_OBJECT:
        \hyperlink{group__string__functions_ga32070517a9f8a70a32ef48f83a6f128e}{printf}(\textcolor{stringliteral}{"%y: is an object\(\backslash\)n"}, o);
        \textcolor{keywordflow}{break};
\}
\end{DoxyCode}
 
\end{DoxyParagraph}
\mbox{\Hypertarget{class_qore_1_1zzz8objectzzz9_a0702bbe59ecc54c7eed8c16550a010ed}\label{class_qore_1_1zzz8objectzzz9_a0702bbe59ecc54c7eed8c16550a010ed}} 
\index{Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}!unique\+Hash@{unique\+Hash}}
\index{unique\+Hash@{unique\+Hash}!Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}}
\subsubsection{\texorpdfstring{unique\+Hash()}{uniqueHash()}}
{\footnotesize\ttfamily \hyperlink{group__type__conversion__functions_gacf16b4126b795f4b6933ef3425cadae3}{string} Qore\+::zzz8objectzzz9\+::unique\+Hash (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Return a unique string for the data independent of the content. 

\begin{DoxyParagraph}{Code Flags\+:}
\hyperlink{code_flags_CONSTANT}{C\+O\+N\+S\+T\+A\+NT}
\end{DoxyParagraph}
\begin{DoxyReturn}{Returns}
a unique string for the data independent of the content
\end{DoxyReturn}
\begin{DoxyNote}{Note}
an S\+H\+A1 hash is created with a random salt created when the Qore library is initialized and the internal pointer address
\end{DoxyNote}
\begin{DoxySince}{Since}
Qore 0.\+8.\+12 
\end{DoxySince}
\mbox{\Hypertarget{class_qore_1_1zzz8objectzzz9_ab017d670419423d5a3620fcada27d935}\label{class_qore_1_1zzz8objectzzz9_ab017d670419423d5a3620fcada27d935}} 
\index{Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}!val@{val}}
\index{val@{val}!Qore\+::zzz8objectzzz9@{Qore\+::zzz8objectzzz9}}
\subsubsection{\texorpdfstring{val()}{val()}}
{\footnotesize\ttfamily bool Qore\+::zzz8objectzzz9\+::val (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Returns \hyperlink{group__boolean__constants_ga9da2b9a8003cd3788e48305f8a00540f}{False} if the object has no public or private members, \hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} if it does. 

The opposite of \hyperlink{class_qore_1_1zzz8objectzzz9_a98fdee3ab7365dcaad9ea0499cf999a6}{Qore\+::zzz8objectzzz9\+::empty()}

\begin{DoxyReturn}{Returns}
\hyperlink{group__boolean__constants_ga9da2b9a8003cd3788e48305f8a00540f}{False} if the object has no public or private members, \hyperlink{group__boolean__constants_ga3ba2df91713a6249449347131ea526c3}{True} if it does
\end{DoxyReturn}
\begin{DoxyParagraph}{Code Flags\+:}
\hyperlink{code_flags_RET_VALUE_ONLY}{R\+E\+T\+\_\+\+V\+A\+L\+U\+E\+\_\+\+O\+N\+LY}
\end{DoxyParagraph}
\begin{DoxyParagraph}{Example\+:}

\begin{DoxyCode}
bool b = o.val();
\end{DoxyCode}

\end{DoxyParagraph}
\begin{DoxySeeAlso}{See also}

\begin{DoxyItemize}
\item \hyperlink{parse_directives_perl-bool-eval}{\%perl-\/bool-\/eval}
\item \hyperlink{parse_directives_strict-bool-eval}{\%strict-\/bool-\/eval} 
\end{DoxyItemize}
\end{DoxySeeAlso}
