KJS::Value Class Reference

#include <value.h>

Inheritance diagram for KJS::Value:

KJS::Boolean KJS::Completion KJS::Null KJS::Number KJS::Object KJS::Reference KJS::String KJS::Undefined List of all members.

Detailed Description

Value objects are act as wrappers ("smart pointers") around ValueImp objects and their descendents.

Instead of using ValueImps (and derivatives) during normal program execution, you should use a Value-derived class.

Value maintains a pointer to a ValueImp object and uses a reference counting scheme to ensure that the ValueImp object is not deleted or garbage collected.

Note: The conversion operations all return values of various types - if an error occurs during conversion, an error object will instead be returned (where possible), and the execution state's exception will be set appropriately.

Definition at line 168 of file value.h.


Public Member Functions

 Value ()
 Value (ValueImp *v)
 Value (const Value &v)
 ~Value ()
Valueoperator= (const Value &v)
bool isValid () const
bool isNull () const
ValueImpimp () const
Type type () const
bool isA (Type t) const
Value toPrimitive (ExecState *exec, Type preferredType=UnspecifiedType) const
bool toBoolean (ExecState *exec) const
double toNumber (ExecState *exec) const
int toInteger (ExecState *exec) const
int toInt32 (ExecState *exec) const
unsigned int toUInt32 (ExecState *exec) const
unsigned short toUInt16 (ExecState *exec) const
UString toString (ExecState *exec) const
Object toObject (ExecState *exec) const
bool toUInt32 (unsigned &i) const

Protected Attributes

ValueImprep

Member Function Documentation

bool KJS::Value::isValid (  )  const [inline]

Returns whether or not this is a valid value.

An invalid value has a 0 implementation pointer and should not be used for any other operation than this check. Current use: as a distinct return value signalling failing dynamicCast() calls.

Definition at line 182 of file value.h.

bool KJS::Value::isNull (  )  const [inline]

Deprecated:
Use !isValid() instead.

Definition at line 187 of file value.h.

Type KJS::Value::type (  )  const [inline]

Returns the type of value.

This is one of UndefinedType, NullType, BooleanType, StringType, NumberType, or ObjectType.

Returns:
The type of value

Definition at line 196 of file value.h.

bool KJS::Value::isA ( Type  t  )  const [inline]

Checks whether or not the value is of a particular tpye.

Parameters:
t The type to compare with
Returns:
true if the value is of the specified type, otherwise false

Definition at line 204 of file value.h.

Value KJS::Value::toPrimitive ( ExecState exec,
Type  preferredType = UnspecifiedType 
) const [inline]

Performs the ToPrimitive type conversion operation on this value (ECMA 9.1).

Definition at line 210 of file value.h.

bool KJS::Value::toBoolean ( ExecState exec  )  const [inline]

Performs the ToBoolean type conversion operation on this value (ECMA 9.2).

Definition at line 217 of file value.h.

double KJS::Value::toNumber ( ExecState exec  )  const [inline]

Performs the ToNumber type conversion operation on this value (ECMA 9.3).

Definition at line 222 of file value.h.

int KJS::Value::toInteger ( ExecState exec  )  const [inline]

Performs the ToInteger type conversion operation on this value (ECMA 9.4).

Definition at line 227 of file value.h.

int KJS::Value::toInt32 ( ExecState exec  )  const [inline]

Performs the ToInt32 type conversion operation on this value (ECMA 9.5).

Definition at line 232 of file value.h.

unsigned int KJS::Value::toUInt32 ( ExecState exec  )  const [inline]

Performs the ToUInt32 type conversion operation on this value (ECMA 9.6).

Definition at line 237 of file value.h.

unsigned short KJS::Value::toUInt16 ( ExecState exec  )  const [inline]

Performs the ToUInt16 type conversion operation on this value (ECMA 9.7).

Definition at line 242 of file value.h.

UString KJS::Value::toString ( ExecState exec  )  const [inline]

Performs the ToString type conversion operation on this value (ECMA 9.8).

Definition at line 247 of file value.h.

Object KJS::Value::toObject ( ExecState exec  )  const [inline]

Performs the ToObject type conversion operation on this value (ECMA 9.9).

Definition at line 359 of file object.h.

bool KJS::Value::toUInt32 ( unsigned &  i  )  const [inline]

Checks if we can do a lossless conversion to UInt32.

Definition at line 257 of file value.h.


The documentation for this class was generated from the following files:
KDE Home | KDE Accessibility Home | Description of Access Keys