gnash::asClass Class Reference

#include <asClass.h>

List of all members.

Public Member Functions

as_objectgetPrototype ()
void dump ()
bool addValue (string_table::key name, asNamespace *ns, boost::uint32_t slotId, asClass *type, as_value &val, bool isconst, bool isstatic)
bool addSlot (string_table::key name, asNamespace *ns, boost::uint32_t slotId, asClass *type, bool isstatic)
bool addMethod (string_table::key name, asNamespace *ns, asMethod *method, bool isstatic)
bool addGetter (string_table::key name, asNamespace *ns, asMethod *method, bool isstatic)
bool addSetter (string_table::key name, asNamespace *ns, asMethod *method, bool isstatic)
bool addMemberClass (string_table::key name, asNamespace *ns, boost::uint32_t slotId, asClass *type, bool isstatic)
bool addSlotFunction (string_table::key name, asNamespace *ns, boost::uint32_t slotId, asMethod *method, bool isstatic)
bool isFinal () const
 Is the class final?
void setFinal ()
 Set the class as final.
void unsetFinal ()
 Set the class as not final.
bool isSealed () const
 Is the class sealed?
void setSealed ()
 Set the class as sealed.
void unsetSealed ()
bool isInterface () const
 Is the class an interface type?
void setInterface ()
 Set the class as an interface.
void unsetInterface ()
 Set the class as not an interface.
bool isDynamic () const
 Is the class dynamic?
void setDynamic ()
 Set the class as dynamic.
void unsetDynamic ()
 Set the class as not dynamic.
bool hasProtectedNs () const
 Does the class have a protected namespace to be inherited?
asNamespacegetProtectedNs ()
 Get the protected namespace.
void setProtectedNs (asNamespace *n)
 Set the protected namespace.
string_table::key getName () const
void setName (string_table::key name)
 Set our Name.
asClassgetSuper () const
 What is the type of our parent class?
void pushInterface (asClass *p)
 We implement this interface.
void setConstructor (asMethod *m)
 This is our constructor.
asMethodgetConstructor ()
void setStaticConstructor (asMethod *m)
void setSuper (asClass *p)
void buildFromPrototype (as_object *o, string_table::key name, ClassHierarchy *)
 Try to build an asClass object from just a prototype.
void setDeclared ()
bool isDeclared ()
void setInherited ()
bool isInherited ()
void setSystem ()
void unsetSystem ()
bool isSystem ()
 asClass ()
asBindinggetBinding (string_table::key name)
asBindinggetGetBinding (as_value &v, asName &n)
asBindinggetSetBinding (as_value &v, asName &n)


Detailed Description

A class to represent, abstractly, ActionScript prototypes.

This class is intended to be able to capture the structure of an ActionScript prototype as a type, rather than as an object. This is contrary to the spirit of ActionScript as a dynamic language, but it is incredibly helpful to an interpreter for that language.


Constructor & Destructor Documentation

gnash::asClass::asClass (  )  [inline]


Member Function Documentation

as_object* gnash::asClass::getPrototype (  )  [inline]

void gnash::asClass::dump (  ) 

bool gnash::asClass::addValue ( string_table::key  name,
asNamespace ns,
boost::uint32_t  slotId,
asClass type,
as_value val,
bool  isconst,
bool  isstatic 
)

bool gnash::asClass::addSlot ( string_table::key  name,
asNamespace ns,
boost::uint32_t  slotId,
asClass type,
bool  isstatic 
)

bool gnash::asClass::addMethod ( string_table::key  name,
asNamespace ns,
asMethod method,
bool  isstatic 
)

bool gnash::asClass::addGetter ( string_table::key  name,
asNamespace ns,
asMethod method,
bool  isstatic 
)

bool gnash::asClass::addSetter ( string_table::key  name,
asNamespace ns,
asMethod method,
bool  isstatic 
)

bool gnash::asClass::addMemberClass ( string_table::key  name,
asNamespace ns,
boost::uint32_t  slotId,
asClass type,
bool  isstatic 
)

bool gnash::asClass::addSlotFunction ( string_table::key  name,
asNamespace ns,
boost::uint32_t  slotId,
asMethod method,
bool  isstatic 
)

bool gnash::asClass::isFinal (  )  const [inline]

Is the class final?

void gnash::asClass::setFinal (  )  [inline]

Set the class as final.

void gnash::asClass::unsetFinal (  )  [inline]

Set the class as not final.

bool gnash::asClass::isSealed (  )  const [inline]

Is the class sealed?

void gnash::asClass::setSealed (  )  [inline]

Set the class as sealed.

void gnash::asClass::unsetSealed (  )  [inline]

bool gnash::asClass::isInterface (  )  const [inline]

Is the class an interface type?

void gnash::asClass::setInterface (  )  [inline]

Set the class as an interface.

void gnash::asClass::unsetInterface (  )  [inline]

Set the class as not an interface.

bool gnash::asClass::isDynamic (  )  const [inline]

Is the class dynamic?

void gnash::asClass::setDynamic (  )  [inline]

Set the class as dynamic.

void gnash::asClass::unsetDynamic (  )  [inline]

Set the class as not dynamic.

bool gnash::asClass::hasProtectedNs (  )  const [inline]

Does the class have a protected namespace to be inherited?

asNamespace* gnash::asClass::getProtectedNs (  )  [inline]

Get the protected namespace.

void gnash::asClass::setProtectedNs ( asNamespace n  )  [inline]

Set the protected namespace.

string_table::key gnash::asClass::getName (  )  const [inline]

void gnash::asClass::setName ( string_table::key  name  )  [inline]

Set our Name.

asClass* gnash::asClass::getSuper (  )  const [inline]

What is the type of our parent class?

void gnash::asClass::pushInterface ( asClass p  )  [inline]

We implement this interface.

void gnash::asClass::setConstructor ( asMethod m  )  [inline]

This is our constructor.

asMethod* gnash::asClass::getConstructor (  )  [inline]

void gnash::asClass::setStaticConstructor ( asMethod m  )  [inline]

void gnash::asClass::setSuper ( asClass p  )  [inline]

void gnash::asClass::buildFromPrototype ( as_object o,
string_table::key  name,
ClassHierarchy  
)

Try to build an asClass object from just a prototype.

void gnash::asClass::setDeclared (  )  [inline]

bool gnash::asClass::isDeclared (  )  [inline]

void gnash::asClass::setInherited (  )  [inline]

bool gnash::asClass::isInherited (  )  [inline]

void gnash::asClass::setSystem (  )  [inline]

void gnash::asClass::unsetSystem (  )  [inline]

bool gnash::asClass::isSystem (  )  [inline]

asBinding* gnash::asClass::getBinding ( string_table::key  name  )  [inline]

asBinding* gnash::asClass::getGetBinding ( as_value v,
asName n 
)

asBinding* gnash::asClass::getSetBinding ( as_value v,
asName n 
)


The documentation for this class was generated from the following files:
Generated on Thu Mar 6 18:25:10 2008 for Gnash by  doxygen 1.5.4