\section{KJS::Value\-Imp Class Reference}
\label{classKJS_1_1ValueImp}\index{KJS::ValueImp@{KJS::ValueImp}}
{\bf Value\-Imp}{\rm (p.\,\pageref{classKJS_1_1ValueImp})} is the base type for all primitives ({\bf Undefined}{\rm (p.\,\pageref{classKJS_1_1Undefined})}, {\bf Null}{\rm (p.\,\pageref{classKJS_1_1Null})}, {\bf Boolean}{\rm (p.\,\pageref{classKJS_1_1Boolean})}, {\bf String}{\rm (p.\,\pageref{classKJS_1_1String})}, {\bf Number}{\rm (p.\,\pageref{classKJS_1_1Number})}) and objects in ECMAScript.  


{\tt \#include $<$value.h$>$}

\subsection*{Public Member Functions}
\begin{CompactItemize}
\item 
{\bf Value\-Imp} $\ast$ {\bf ref} ()\label{classKJS_1_1ValueImp_a2}

\item 
bool {\bf deref} ()\label{classKJS_1_1ValueImp_a3}

\item 
virtual void {\bf mark} ()\label{classKJS_1_1ValueImp_a4}

\item 
bool {\bf marked} () const \label{classKJS_1_1ValueImp_a5}

\item 
void $\ast$ {\bf operator new} (size\_\-t)\label{classKJS_1_1ValueImp_a6}

\item 
void {\bf operator delete} (void $\ast$)\label{classKJS_1_1ValueImp_a7}

\item 
void {\bf set\-Gc\-Allowed} ()\label{classKJS_1_1ValueImp_a8}

\item 
void {\bf inlined\-Set\-Gc\-Allowed} ()\label{classKJS_1_1ValueImp_a9}

\item 
virtual Type {\bf type} () const =0\label{classKJS_1_1ValueImp_a10}

\item 
virtual {\bf Value} {\bf to\-Primitive} ({\bf Exec\-State} $\ast$exec, Type preferred\-Type=Unspecified\-Type) const =0\label{classKJS_1_1ValueImp_a11}

\item 
virtual bool {\bf to\-Boolean} ({\bf Exec\-State} $\ast$exec) const =0\label{classKJS_1_1ValueImp_a12}

\item 
virtual double {\bf to\-Number} ({\bf Exec\-State} $\ast$exec) const =0\label{classKJS_1_1ValueImp_a13}

\item 
virtual int {\bf to\-Integer} ({\bf Exec\-State} $\ast$exec) const \label{classKJS_1_1ValueImp_a14}

\item 
virtual int {\bf to\-Int32} ({\bf Exec\-State} $\ast$exec) const \label{classKJS_1_1ValueImp_a15}

\item 
virtual unsigned int {\bf to\-UInt32} ({\bf Exec\-State} $\ast$exec) const \label{classKJS_1_1ValueImp_a16}

\item 
virtual unsigned short {\bf to\-UInt16} ({\bf Exec\-State} $\ast$exec) const \label{classKJS_1_1ValueImp_a17}

\item 
virtual {\bf UString} {\bf to\-String} ({\bf Exec\-State} $\ast$exec) const =0\label{classKJS_1_1ValueImp_a18}

\item 
virtual {\bf Object} {\bf to\-Object} ({\bf Exec\-State} $\ast$exec) const =0\label{classKJS_1_1ValueImp_a19}

\item 
virtual {\bf Value} {\bf get\-Base} ({\bf Exec\-State} $\ast$exec) const \label{classKJS_1_1ValueImp_a20}

\item 
virtual {\bf UString} {\bf get\-Property\-Name} ({\bf Exec\-State} $\ast$exec) const \label{classKJS_1_1ValueImp_a21}

\item 
virtual {\bf Value} {\bf get\-Value} ({\bf Exec\-State} $\ast$exec) const \label{classKJS_1_1ValueImp_a22}

\item 
virtual void {\bf put\-Value} ({\bf Exec\-State} $\ast$exec, const  {\bf Value} w)\label{classKJS_1_1ValueImp_a23}

\end{CompactItemize}
\subsection*{Public Attributes}
\begin{CompactItemize}
\item 
unsigned int {\bf refcount}\label{classKJS_1_1ValueImp_o0}

\end{CompactItemize}
\subsection*{Friends}
\begin{CompactItemize}
\item 
class {\bf Collector}\label{classKJS_1_1ValueImp_n0}

\end{CompactItemize}


\subsection{Detailed Description}
{\bf Value\-Imp}{\rm (p.\,\pageref{classKJS_1_1ValueImp})} is the base type for all primitives ({\bf Undefined}{\rm (p.\,\pageref{classKJS_1_1Undefined})}, {\bf Null}{\rm (p.\,\pageref{classKJS_1_1Null})}, {\bf Boolean}{\rm (p.\,\pageref{classKJS_1_1Boolean})}, {\bf String}{\rm (p.\,\pageref{classKJS_1_1String})}, {\bf Number}{\rm (p.\,\pageref{classKJS_1_1Number})}) and objects in ECMAScript. 

Note: you should never inherit from {\bf Value\-Imp}{\rm (p.\,\pageref{classKJS_1_1ValueImp})} as it is for primitive types only (all of which are provided internally by KJS). Instead, inherit from Object\-Imp. 



Definition at line 83 of file value.h.

The documentation for this class was generated from the following files:\begin{CompactItemize}
\item 
value.h\item 
value.cpp\end{CompactItemize}
