Gnash
0.8.10
|
Represent an ActionScript Namespace. More...
#include <Namespace.h>
Public Member Functions | |
Namespace () | |
Create an empty namespace. | |
void | markReachableResources () const |
void | setParent (Namespace *p) |
Our parent (for protected) | |
Namespace * | getParent () |
void | setURI (string_table::key name) |
Set the uri. | |
string_table::key | getURI () const |
What is the Uri of the namespace? | |
string_table::key | getPrefix () const |
What is the XML prefix? | |
bool | addScript (string_table::key name, Class *a) |
void | stubPrototype (ClassHierarchy &ch, string_table::key name) |
Class * | getScript (string_table::key name) |
void | dump (string_table &st) |
void | setPrivate () |
void | unsetPrivate () |
bool | isPrivate () |
void | setProtected () |
void | unsetProtected () |
bool | isProtected () |
void | setPackage () |
void | unsetPackage () |
bool | isPackage () |
Represent an ActionScript Namespace.
Namespaces are generally global resources, although private Namespaces are only visible inside a single AbcBlock. Because there is no guarantee that a Namespace is private to an AbcBlock, they must never store any AbcBlock-internal information, particularly not the AbcURI. A Namespace is currently a collection of Scripts, which should be turned into a Class on first use.
gnash::abc::Namespace::Namespace | ( | ) | [inline] |
Create an empty namespace.
bool gnash::abc::Namespace::addScript | ( | string_table::key | name, |
Class * | a | ||
) | [inline] |
Add a Class to the namespace. The namespace stores this, but does not take ownership.
Referenced by stubPrototype().
void gnash::abc::Namespace::dump | ( | string_table & | st | ) |
References gnash::key::s, gnash::key::i, gnash::key::e, gnash::key::t, and gnash::string_table::value().
Namespace* gnash::abc::Namespace::getParent | ( | ) | [inline] |
Referenced by getScript().
string_table::key gnash::abc::Namespace::getPrefix | ( | ) | const [inline] |
What is the XML prefix?
Class* gnash::abc::Namespace::getScript | ( | string_table::key | name | ) | [inline] |
Get the named class. Returns NULL if information is not known about the class. (Stubbed classes still return NULL here.)
References getParent(), and getScript().
Referenced by gnash::abc::AbcBlock::locateClass(), and getScript().
string_table::key gnash::abc::Namespace::getURI | ( | ) | const [inline] |
What is the Uri of the namespace?
Referenced by gnash::abc::Class::addValue(), gnash::abc::Class::addSlot(), gnash::abc::Class::addGetter(), gnash::abc::Class::addSetter(), gnash::abc::Machine::execute(), gnash::abc::Method::addValue(), gnash::abc::Method::addGetter(), gnash::abc::Method::addSetter(), and gnash::abc::Method::addSlot().
bool gnash::abc::Namespace::isPackage | ( | ) | [inline] |
bool gnash::abc::Namespace::isPrivate | ( | ) | [inline] |
bool gnash::abc::Namespace::isProtected | ( | ) | [inline] |
void gnash::abc::Namespace::markReachableResources | ( | ) | const [inline] |
void gnash::abc::Namespace::setPackage | ( | ) | [inline] |
void gnash::abc::Namespace::setParent | ( | Namespace * | p | ) | [inline] |
Our parent (for protected)
References gnash::key::p.
void gnash::abc::Namespace::setPrivate | ( | ) | [inline] |
void gnash::abc::Namespace::setProtected | ( | ) | [inline] |
void gnash::abc::Namespace::setURI | ( | string_table::key | name | ) | [inline] |
Set the uri.
void gnash::abc::Namespace::stubPrototype | ( | ClassHierarchy & | ch, |
string_table::key | name | ||
) |
References gnash::abc::Class::setName(), and addScript().
void gnash::abc::Namespace::unsetPackage | ( | ) | [inline] |
void gnash::abc::Namespace::unsetPrivate | ( | ) | [inline] |
void gnash::abc::Namespace::unsetProtected | ( | ) | [inline] |