Gnash
0.8.10
|
An MultiName represents a single ABC multiname. More...
#include <MultiName.h>
Public Types | |
enum | Kind { KIND_Qname = 0x07, KIND_QnameA = 0x0D, KIND_RTQname = 0x0F, KIND_RTQnameA = 0x10, KIND_RTQnameL = 0x11, KIND_RTQnameLA = 0x12, KIND_Multiname = 0x09, KIND_MultinameA = 0x0E, KIND_MultinameL = 0x1B, KIND_MultinameLA = 0x1C } |
Public Member Functions | |
MultiName () | |
void | setFlags (Kind kind) |
boost::uint8_t | flags () const |
bool | isRuntime () |
If true, the name needs a run-time string value to complete it. | |
bool | isRtns () |
If true, the name needs a run-time namespace to complete it. | |
bool | isQName () |
void | setQName () |
void | setNamespace (Namespace *ns) |
Namespace * | getNamespace () const |
abc::URI | getABCName () const |
void | setABCName (abc::URI n) |
string_table::key | getGlobalName () const |
void | setGlobalName (string_table::key n) |
void | setAttr () |
void | fill (as_object *) |
Property * | findProperty () |
void | namespaceSet (std::vector< Namespace * > *v) |
const std::vector< Namespace * > * | namespaceSet () const |
An MultiName represents a single ABC multiname.
All MultiNames are internal to a single AbcBlock. Most are created during parsing, though the Machine can also create them for the lifetime of a single script run (which corresponds to an AbcBlock). This means it is possible to store internal ABC URI of multiname here.
gnash::abc::MultiName::MultiName | ( | ) | [inline] |
void gnash::abc::MultiName::fill | ( | as_object * | ) | [inline] |
Property* gnash::abc::MultiName::findProperty | ( | ) |
boost::uint8_t gnash::abc::MultiName::flags | ( | ) | const [inline] |
Referenced by gnash::abc::Machine::execute().
abc::URI gnash::abc::MultiName::getABCName | ( | ) | const [inline] |
string_table::key gnash::abc::MultiName::getGlobalName | ( | ) | const [inline] |
Referenced by gnash::abc::AbcBlock::locateClass(), and gnash::abc::Machine::execute().
Namespace* gnash::abc::MultiName::getNamespace | ( | ) | const [inline] |
Referenced by gnash::abc::AbcBlock::locateClass(), and gnash::abc::Machine::execute().
bool gnash::abc::MultiName::isQName | ( | ) | [inline] |
bool gnash::abc::MultiName::isRtns | ( | ) | [inline] |
If true, the name needs a run-time namespace to complete it.
Referenced by gnash::abc::Machine::completeName().
bool gnash::abc::MultiName::isRuntime | ( | ) | [inline] |
If true, the name needs a run-time string value to complete it.
Referenced by gnash::abc::Machine::execute(), and gnash::abc::Machine::completeName().
void gnash::abc::MultiName::namespaceSet | ( | std::vector< Namespace * > * | v | ) | [inline] |
References test::v.
Referenced by gnash::abc::AbcBlock::locateClass().
const std::vector<Namespace*>* gnash::abc::MultiName::namespaceSet | ( | ) | const [inline] |
void gnash::abc::MultiName::setABCName | ( | abc::URI | n | ) | [inline] |
References gnash::key::n.
void gnash::abc::MultiName::setAttr | ( | ) | [inline] |
void gnash::abc::MultiName::setFlags | ( | Kind | kind | ) | [inline] |
void gnash::abc::MultiName::setGlobalName | ( | string_table::key | n | ) | [inline] |
References gnash::key::n.
Referenced by gnash::abc::AbcBlock::locateClass(), and gnash::abc::AbcBlock::update_global_name().
void gnash::abc::MultiName::setNamespace | ( | Namespace * | ns | ) | [inline] |
Referenced by gnash::abc::AbcBlock::locateClass().
void gnash::abc::MultiName::setQName | ( | ) | [inline] |