lightspark::ASObject Class Reference

#include <asobject.h>

Inherited by lightspark::ApplicationDomain, lightspark::Array, lightspark::ASError, lightspark::ASMovieClipLoader, lightspark::ASQName, lightspark::ASString, lightspark::ASXML, lightspark::Boolean, lightspark::ByteArray, lightspark::Capabilities, lightspark::Class_base, lightspark::ColorTransform, lightspark::Date, lightspark::Definable, lightspark::Dictionary, lightspark::Event, lightspark::EventDispatcher, lightspark::ExternalInterface, lightspark::Font, lightspark::Graphics, lightspark::IFunction, lightspark::Integer, lightspark::InterfaceClass, lightspark::LineScaleMode, lightspark::Math, lightspark::Matrix, lightspark::Namespace, lightspark::Null, lightspark::Number, lightspark::ObjectEncoding, lightspark::Point, lightspark::Proxy, lightspark::Rectangle, lightspark::RegExp, lightspark::Security, lightspark::SharedObject, lightspark::SoundTransform, lightspark::StageAlign, lightspark::StageScaleMode, lightspark::Transform, lightspark::UInteger, lightspark::Undefined, lightspark::URLLoaderDataFormat, lightspark::URLRequest, lightspark::URLVariables, and lightspark::XMLDocument.

Collaboration diagram for lightspark::ASObject:
Collaboration graph
[legend]

List of all members.

Public Member Functions

int getRefCount ()
void setPrototype (Class_base *c)
Class_basegetPrototype () const
 ASFUNCTION (_constructor)
 ASFUNCTION (_getPrototype)
 ASFUNCTION (_setPrototype)
 ASFUNCTION (_toString)
 ASFUNCTION (hasOwnProperty)
void check () const
void incRef ()
void decRef ()
void fake_decRef ()
virtual ASObjectgetVariableByMultiname (const multiname &name, bool skip_impl=false, bool enableOverride=true, ASObject *base=NULL)
virtual intptr_t getVariableByMultiname_i (const multiname &name)
virtual ASObjectgetVariableByQName (const tiny_string &name, const tiny_string &ns, bool skip_impl=false)
virtual void setVariableByMultiname_i (const multiname &name, intptr_t value)
virtual void setVariableByMultiname (const multiname &name, ASObject *o, bool enableOverride=true, ASObject *base=NULL)
virtual void deleteVariableByMultiname (const multiname &name)
virtual void setVariableByQName (const tiny_string &name, const tiny_string &ns, ASObject *o, bool skip_impl=false)
void setGetterByQName (const tiny_string &name, const tiny_string &ns, IFunction *o)
void setSetterByQName (const tiny_string &name, const tiny_string &ns, IFunction *o)
bool hasPropertyByMultiname (const multiname &name)
bool hasPropertyByQName (const tiny_string &name, const tiny_string &ns)
ASObjectgetSlot (unsigned int n)
void setSlot (unsigned int n, ASObject *o)
void initSlot (unsigned int n, const tiny_string &name, const tiny_string &ns)
virtual unsigned int numVariables ()
tiny_string getNameAt (int i)
ASObjectgetValueAt (int i)
SWFOBJECT_TYPE getObjectType () const
virtual tiny_string toString (bool debugMsg=false)
virtual int32_t toInt ()
virtual uint32_t toUInt ()
virtual double toNumber ()
 ASFUNCTION (generator)
virtual bool isEqual (ASObject *r)
virtual TRISTATE isLess (ASObject *r)
int getLevel () const
void decLevel ()
void setLevel (int l)
void resetLevel ()
Class_basegetActualPrototype () const
virtual bool hasNext (unsigned int &index, bool &out)
virtual bool nextName (unsigned int index, ASObject *&out)
virtual bool nextValue (unsigned int index, ASObject *&out)

Static Public Member Functions

static void s_incRef (ASObject *o)
static void s_decRef (ASObject *o)
static void s_decRef_safe (ASObject *o, ASObject *o2)
static void sinit (Class_base *c)
static void buildTraits (ASObject *o)

Public Attributes

bool initialized
bool implEnable

Protected Member Functions

 ASObject (Manager *m=NULL)
 ASObject (const ASObject &o)
virtual ~ASObject ()

Protected Attributes

variables_map Variables
SWFOBJECT_TYPE type

Private Member Functions

 CLASSBUILDABLE (ASObject)
 ATOMIC_INT32 (ref_count)
virtual int _maxlevel ()
obj_varfindGettable (const multiname &name) DLL_LOCAL
obj_varfindSettable (const multiname &name) DLL_LOCAL

Private Attributes

Managermanager
int cur_level
Class_baseprototype

Friends

class Manager
class ABCVm
class ABCContext
class Class_base
class IFunction

Detailed Description

Definition at line 104 of file asobject.h.


Constructor & Destructor Documentation

ASObject::ASObject ( Manager m = NULL  )  [protected]

Definition at line 730 of file asobject.cpp.

ASObject::ASObject ( const ASObject o  )  [protected]

Definition at line 738 of file asobject.cpp.

ASObject::~ASObject (  )  [protected, virtual]

Definition at line 766 of file asobject.cpp.


Member Function Documentation

int ASObject::_maxlevel (  )  [private, virtual]

Reimplemented in lightspark::Class_base.

Definition at line 775 of file asobject.cpp.

lightspark::ASObject::ASFUNCTION ( generator   ) 

Reimplemented in lightspark::Integer.

lightspark::ASObject::ASFUNCTION ( hasOwnProperty   ) 
lightspark::ASObject::ASFUNCTION ( _toString   ) 

Reimplemented in lightspark::Integer.

lightspark::ASObject::ASFUNCTION ( _setPrototype   ) 
lightspark::ASObject::ASFUNCTION ( _getPrototype   ) 
lightspark::ASObject::ASFUNCTION ( _constructor   ) 
lightspark::ASObject::ATOMIC_INT32 ( ref_count   )  [private]
void ASObject::buildTraits ( ASObject o  )  [static]

Reimplemented in lightspark::DisplayObject, lightspark::InteractiveObject, lightspark::DisplayObjectContainer, lightspark::Graphics, lightspark::Shape, lightspark::MorphShape, lightspark::LoaderInfo, lightspark::Loader, lightspark::Sprite, lightspark::MovieClip, lightspark::Stage, lightspark::StageScaleMode, lightspark::StageAlign, lightspark::Event, lightspark::KeyboardEvent, lightspark::FocusEvent, lightspark::FullScreenEvent, lightspark::NetStatusEvent, lightspark::HTTPStatusEvent, lightspark::TextEvent, lightspark::ErrorEvent, lightspark::IOErrorEvent, lightspark::SecurityErrorEvent, lightspark::AsyncErrorEvent, lightspark::ProgressEvent, lightspark::TimerEvent, lightspark::MouseEvent, lightspark::EventDispatcher, lightspark::Rectangle, lightspark::Point, lightspark::Transform, lightspark::Matrix, lightspark::Sound, lightspark::Video, lightspark::URLRequest, lightspark::URLLoader, lightspark::NetConnection, lightspark::NetStream, lightspark::ApplicationDomain, lightspark::TextField, lightspark::StyleSheet, lightspark::ByteArray, lightspark::Dictionary, lightspark::XMLDocument, lightspark::Boolean, lightspark::ASString, lightspark::Namespace, lightspark::Array, lightspark::Integer, lightspark::Number, lightspark::Date, lightspark::RegExp, lightspark::ASError, lightspark::SecurityError, lightspark::ArgumentError, lightspark::DefinitionError, lightspark::EvalError, lightspark::RangeError, lightspark::ReferenceError, lightspark::SyntaxError, lightspark::TypeError, lightspark::URIError, and lightspark::VerifyError.

Definition at line 111 of file asobject.cpp.

void ASObject::check (  )  const

Definition at line 661 of file asobject.cpp.

lightspark::ASObject::CLASSBUILDABLE ( ASObject   )  [private]
void lightspark::ASObject::decLevel (  )  [inline]

Definition at line 237 of file asobject.h.

void lightspark::ASObject::decRef (  )  [inline]

Definition at line 150 of file asobject.h.

void ASObject::deleteVariableByMultiname ( const multiname name  )  [virtual]

Reimplemented in lightspark::Dictionary, and lightspark::Proxy.

Definition at line 286 of file asobject.cpp.

void lightspark::ASObject::fake_decRef (  )  [inline]

Definition at line 173 of file asobject.h.

obj_var * ASObject::findGettable ( const multiname name  )  [private]

Definition at line 565 of file asobject.cpp.

obj_var * ASObject::findSettable ( const multiname name  )  [private]

Definition at line 314 of file asobject.cpp.

Class_base * ASObject::getActualPrototype (  )  const

Definition at line 785 of file asobject.cpp.

int lightspark::ASObject::getLevel (  )  const [inline]

Definition at line 233 of file asobject.h.

tiny_string lightspark::ASObject::getNameAt ( int  i  )  [inline]

Definition at line 213 of file asobject.h.

SWFOBJECT_TYPE lightspark::ASObject::getObjectType (  )  const [inline]

Definition at line 218 of file asobject.h.

Class_base* lightspark::ASObject::getPrototype (  )  const [inline]

Definition at line 137 of file asobject.h.

int lightspark::ASObject::getRefCount (  )  [inline]

Definition at line 133 of file asobject.h.

ASObject* lightspark::ASObject::getSlot ( unsigned int  n  )  [inline]

Definition at line 203 of file asobject.h.

ASObject * ASObject::getValueAt ( int  i  ) 

Definition at line 856 of file asobject.cpp.

ASObject * ASObject::getVariableByMultiname ( const multiname name,
bool  skip_impl = false,
bool  enableOverride = true,
ASObject base = NULL 
) [virtual]
intptr_t ASObject::getVariableByMultiname_i ( const multiname name  )  [virtual]
ASObject * ASObject::getVariableByQName ( const tiny_string name,
const tiny_string ns,
bool  skip_impl = false 
) [virtual]
bool ASObject::hasNext ( unsigned int &  index,
bool &  out 
) [virtual]

Reimplemented in lightspark::Dictionary, lightspark::Proxy, and lightspark::Array.

Definition at line 89 of file asobject.cpp.

bool ASObject::hasPropertyByMultiname ( const multiname name  ) 

Definition at line 233 of file asobject.cpp.

bool ASObject::hasPropertyByQName ( const tiny_string name,
const tiny_string ns 
)

Definition at line 214 of file asobject.cpp.

void lightspark::ASObject::incRef (  )  [inline]

Definition at line 144 of file asobject.h.

void ASObject::initSlot ( unsigned int  n,
const tiny_string name,
const tiny_string ns 
)

Definition at line 545 of file asobject.cpp.

bool ASObject::isEqual ( ASObject r  )  [virtual]
TRISTATE ASObject::isLess ( ASObject r  )  [virtual]
bool ASObject::nextName ( unsigned int  index,
ASObject *&  out 
) [virtual]

Reimplemented in lightspark::Dictionary, lightspark::Proxy, and lightspark::Array.

Definition at line 95 of file asobject.cpp.

bool ASObject::nextValue ( unsigned int  index,
ASObject *&  out 
) [virtual]

Reimplemented in lightspark::Dictionary, lightspark::Proxy, and lightspark::Array.

Definition at line 101 of file asobject.cpp.

unsigned int ASObject::numVariables (  )  [virtual]

Definition at line 893 of file asobject.cpp.

void ASObject::resetLevel (  ) 

Definition at line 780 of file asobject.cpp.

static void lightspark::ASObject::s_decRef ( ASObject o  )  [inline, static]

Definition at line 181 of file asobject.h.

static void lightspark::ASObject::s_decRef_safe ( ASObject o,
ASObject o2 
) [inline, static]

Definition at line 186 of file asobject.h.

static void lightspark::ASObject::s_incRef ( ASObject o  )  [inline, static]

Definition at line 177 of file asobject.h.

void ASObject::setGetterByQName ( const tiny_string name,
const tiny_string ns,
IFunction o 
)

Definition at line 252 of file asobject.cpp.

void lightspark::ASObject::setLevel ( int  l  )  [inline]

Definition at line 242 of file asobject.h.

void ASObject::setPrototype ( Class_base c  ) 

Definition at line 751 of file asobject.cpp.

void ASObject::setSetterByQName ( const tiny_string name,
const tiny_string ns,
IFunction o 
)

Definition at line 269 of file asobject.cpp.

void lightspark::ASObject::setSlot ( unsigned int  n,
ASObject o 
) [inline]

Definition at line 207 of file asobject.h.

void ASObject::setVariableByMultiname ( const multiname name,
ASObject o,
bool  enableOverride = true,
ASObject base = NULL 
) [virtual]
void ASObject::setVariableByMultiname_i ( const multiname name,
intptr_t  value 
) [virtual]
void ASObject::setVariableByQName ( const tiny_string name,
const tiny_string ns,
ASObject o,
bool  skip_impl = false 
) [virtual]
void ASObject::sinit ( Class_base c  )  [static]

Reimplemented in lightspark::DisplayObject, lightspark::InteractiveObject, lightspark::DisplayObjectContainer, lightspark::Graphics, lightspark::Shape, lightspark::MorphShape, lightspark::LoaderInfo, lightspark::Loader, lightspark::Sprite, lightspark::MovieClip, lightspark::Stage, lightspark::StageScaleMode, lightspark::StageAlign, lightspark::LineScaleMode, lightspark::Bitmap, lightspark::Event, lightspark::KeyboardEvent, lightspark::FocusEvent, lightspark::FullScreenEvent, lightspark::NetStatusEvent, lightspark::HTTPStatusEvent, lightspark::TextEvent, lightspark::ErrorEvent, lightspark::IOErrorEvent, lightspark::SecurityErrorEvent, lightspark::AsyncErrorEvent, lightspark::ProgressEvent, lightspark::TimerEvent, lightspark::MouseEvent, lightspark::EventDispatcher, lightspark::BindClassEvent, lightspark::ShutdownEvent, lightspark::FunctionEvent, lightspark::SynchronizationEvent, lightspark::ABCContextInitEvent, lightspark::ConstructObjectEvent, lightspark::FrameChangeEvent, lightspark::ExternalInterface, lightspark::Rectangle, lightspark::Point, lightspark::ColorTransform, lightspark::Transform, lightspark::Matrix, lightspark::Sound, lightspark::SoundTransform, lightspark::Video, lightspark::URLRequest, lightspark::URLVariables, lightspark::URLLoaderDataFormat, lightspark::SharedObject, lightspark::ObjectEncoding, lightspark::URLLoader, lightspark::NetConnection, lightspark::NetStream, lightspark::Capabilities, lightspark::ApplicationDomain, lightspark::Security, lightspark::Font, lightspark::TextField, lightspark::StyleSheet, lightspark::ByteArray, lightspark::Timer, lightspark::Dictionary, lightspark::Proxy, lightspark::XMLDocument, lightspark::IFunction, lightspark::ASString, lightspark::ASQName, lightspark::Namespace, lightspark::Array, lightspark::Integer, lightspark::UInteger, lightspark::Number, lightspark::Date, lightspark::Math, lightspark::RegExp, lightspark::ASError, lightspark::SecurityError, lightspark::ArgumentError, lightspark::DefinitionError, lightspark::EvalError, lightspark::RangeError, lightspark::ReferenceError, lightspark::SyntaxError, lightspark::TypeError, lightspark::URIError, and lightspark::VerifyError.

Definition at line 107 of file asobject.cpp.

int ASObject::toInt (  )  [virtual]
double ASObject::toNumber (  )  [virtual]
tiny_string ASObject::toString ( bool  debugMsg = false  )  [virtual]
unsigned int ASObject::toUInt (  )  [virtual]

Reimplemented in lightspark::UInteger, and lightspark::Number.

Definition at line 171 of file asobject.cpp.


Friends And Related Function Documentation

friend class ABCContext [friend]
friend class ABCVm [friend]
friend class Class_base [friend]

Definition at line 109 of file asobject.h.

friend class IFunction [friend]

Definition at line 110 of file asobject.h.

friend class Manager [friend]

Definition at line 106 of file asobject.h.


Member Data Documentation

Definition at line 123 of file asobject.h.

Definition at line 135 of file asobject.h.

Reimplemented in lightspark::RootMovieClip, and lightspark::Video.

Definition at line 132 of file asobject.h.

Definition at line 122 of file asobject.h.

Definition at line 125 of file asobject.h.

Reimplemented in lightspark::Event.

Definition at line 119 of file asobject.h.

Definition at line 115 of file asobject.h.


The documentation for this class was generated from the following files:
Generated on Tue Aug 24 19:50:35 2010 for Lightspark by  doxygen 1.6.3