gnash-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gnash-commit] /srv/bzr/gnash/trunk r11630: Move AS3-specific classe


From: strk
Subject: Re: [Gnash-commit] /srv/bzr/gnash/trunk r11630: Move AS3-specific classes into libcore/abc and under the abc namespace.
Date: Mon, 16 Nov 2009 19:25:04 +0100

libcore/event_id.cpp:40: error: wrong number of template arguments (2, should 
be 4)
libcore/event_id.cpp:40: error: invalid type in declaration before ';' token

and others...

--strk;

On Mon, Nov 16, 2009 at 04:50:35PM +0100, Benjamin Wolsey wrote:
> ------------------------------------------------------------
> revno: 11630 [merge]
> committer: Benjamin Wolsey <address@hidden>
> branch nick: trunk
> timestamp: Mon 2009-11-16 16:50:35 +0100
> message:
>   Move AS3-specific classes into libcore/abc and under the abc namespace.
>   This may reduce the confusion about what parts of Gnash are for what 
> purpose.
> added:
>   libcore/abc/
> renamed:
>   libcore/abc_function.cpp => libcore/abc/abc_function.cpp
>   libcore/abc_function.h => libcore/abc/abc_function.h
>   libcore/asBoundValues.h => libcore/abc/BoundValues.h
>   libcore/asClass.cpp => libcore/abc/Class.cpp
>   libcore/asClass.h => libcore/abc/Class.h
>   libcore/asException.h => libcore/abc/asException.h
>   libcore/asMethod.cpp => libcore/abc/Method.cpp
>   libcore/asMethod.h => libcore/abc/Method.h
>   libcore/parser/AbcBlock.cpp => libcore/abc/AbcBlock.cpp
>   libcore/parser/AbcBlock.h => libcore/abc/AbcBlock.h
>   libcore/vm/MultiName.h => libcore/abc/MultiName.h
> modified:
>   libcore/ClassHierarchy.cpp
>   libcore/ClassHierarchy.h
>   libcore/Makefile.am
>   libcore/Namespace.cpp
>   libcore/Namespace.h
>   libcore/as_object.cpp
>   libcore/as_object.h
>   libcore/parser/Makefile.am
>   libcore/vm/Machine.cpp
>   libcore/vm/Machine.h
>   libcore/vm/Makefile.am
>   libcore/abc/abc_function.cpp
>   libcore/abc/abc_function.h
>   libcore/abc/BoundValues.h
>   libcore/abc/Class.cpp
>   libcore/abc/Class.h
>   libcore/abc/asException.h
>   libcore/abc/Method.cpp
>   libcore/abc/Method.h
>   libcore/abc/AbcBlock.cpp
>   libcore/abc/AbcBlock.h

> === modified file 'libcore/ClassHierarchy.cpp'
> --- a/libcore/ClassHierarchy.cpp      2009-11-16 11:16:48 +0000
> +++ b/libcore/ClassHierarchy.cpp      2009-11-16 14:42:56 +0000
> @@ -23,7 +23,7 @@
>  #include "ClassHierarchy.h"
>  #include "as_function.h"
>  #include "builtin_function.h"
> -#include "asClass.h"
> +#include "Class.h"
>  #include "Global_as.h"
>  #include "Object.h"
>  #include "extension.h"
> 
> === modified file 'libcore/ClassHierarchy.h'
> --- a/libcore/ClassHierarchy.h        2009-11-13 08:19:10 +0000
> +++ b/libcore/ClassHierarchy.h        2009-11-16 14:42:56 +0000
> @@ -25,13 +25,13 @@
>  
>  #include "as_object.h"
>  #include "SafeStack.h"
> -#include "asClass.h"
> +#include "Class.h"
>  #include "Namespace.h"
>  
>  #ifdef ENABLE_AVM2
> -# include "asBoundValues.h"
> +# include "BoundValues.h"
>  # include "asException.h"
> -# include "asMethod.h"
> +# include "Method.h"
>  #endif
>  
>  #include <list>
> @@ -207,8 +207,8 @@
>               return &mNamespaces[uri];
>       }
>       
> -    /// Create a new asClass object for use.
> -     asClass* newClass() {
> +    /// Create a new abc::Class object for use.
> +    abc::Class* newClass() {
>          mClassMemory.grow(1);
>          return &mClassMemory.top(0);
>      }
> @@ -220,18 +220,18 @@
>          return &mExceptionMemory.top(0);
>      }
>  
> -     /// Create a new asMethod object for use.
> -     asMethod* newMethod() {
> +     /// Create a new Method object for use.
> +    abc::Method* newMethod() {
>          mMethodMemory.grow(1);
>          return &mMethodMemory.top(0);
>      }
>  
> -     asBoundValue* newBoundValue() {
> +    abc::BoundValue* newBoundValue() {
>          mBoundValueMemory.grow(1);
>          return &mBoundValueMemory.top(0);
>      }
>  
> -     asBoundAccessor* newBoundAccessor() {
> +    abc::BoundAccessor* newBoundAccessor() {
>          mBoundAccessorMemory.grow(1);
>          return &mBoundAccessorMemory.top(0);
>      }
> @@ -249,13 +249,13 @@
>       namespacesContainer mNamespaces;
>       SafeStack<Namespace> mAnonNamespaces;
>       Namespace* mGlobalNamespace;
> -     SafeStack<asClass> mClassMemory;
> +     SafeStack<abc::Class> mClassMemory;
>  
>  #ifdef ENABLE_AVM2
>       SafeStack<asException> mExceptionMemory;
> -     SafeStack<asMethod> mMethodMemory;
> -     SafeStack<asBoundValue> mBoundValueMemory;
> -     SafeStack<asBoundAccessor> mBoundAccessorMemory;
> +     SafeStack<abc::Method> mMethodMemory;
> +     SafeStack<abc::BoundValue> mBoundValueMemory;
> +     SafeStack<abc::BoundAccessor> mBoundAccessorMemory;
>  #endif
>  };
>  
> 
> === modified file 'libcore/Makefile.am'
> --- a/libcore/Makefile.am     2009-11-16 12:29:31 +0000
> +++ b/libcore/Makefile.am     2009-11-16 14:42:56 +0000
> @@ -32,6 +32,7 @@
>       -I$(top_srcdir)/libnet \
>       -I$(top_srcdir)/backend \
>       -I$(top_srcdir)/libcore/swf \
> +     -I$(top_srcdir)/libcore/abc \
>       -I$(top_srcdir)/libcore/asobj \
>       -I$(top_srcdir)/libcore/asobj/flash \
>       -I$(top_srcdir)/libcore/parser \
> @@ -129,7 +130,7 @@
>       styles.cpp \
>       Timers.cpp \
>       RGBA.cpp        \
> -     asClass.cpp \
> +     abc/Class.cpp \
>       MovieFactory.cpp \
>       MovieLoader.cpp \
>       Namespace.cpp \
> @@ -138,8 +139,9 @@
>  
>  if ENABLE_AVM2
>  libgnashcore_la_SOURCES += \
> -     abc_function.cpp \
> -     asMethod.cpp \
> +     abc/abc_function.cpp \
> +     abc/Method.cpp \
> +     abc/AbcBlock.cpp \
>       $(NULL)
>  endif
>  
> @@ -213,10 +215,12 @@
>  if ENABLE_AVM2
>  noinst_HEADERS += \
>       swf/DoABCTag.h \
> -     abc_function.h \
> -     asMethod.h \
> -     asException.h \
> -     asBoundValues.h \
> +     abc/abc_function.h \
> +     abc/Method.h \
> +     abc/asException.h \
> +     abc/BoundValues.h \
> +     abc/AbcBlock.h \
> +     abc/MultiName.h \
>       $(NULL)
>  endif
>  
> @@ -265,7 +269,7 @@
>       RGBA.h  \
>       Geometry.h      \
>       Video.h \
> -     asClass.h \
> +     abc/Class.h \
>       Namespace.h \
>       $(NULL)
>  
> 
> === modified file 'libcore/Namespace.cpp'
> --- a/libcore/Namespace.cpp   2009-11-13 14:22:20 +0000
> +++ b/libcore/Namespace.cpp   2009-11-16 14:42:56 +0000
> @@ -32,7 +32,7 @@
>  void
>  Namespace::stubPrototype(ClassHierarchy& ch, string_table::key name)
>  {
> -     asClass *pClass = ch.newClass();
> +     abc::Class *pClass = ch.newClass();
>       pClass->setName(name);
>       addClass(name, pClass);
>  }
> 
> === modified file 'libcore/Namespace.h'
> --- a/libcore/Namespace.h     2009-11-13 14:22:20 +0000
> +++ b/libcore/Namespace.h     2009-11-16 14:42:56 +0000
> @@ -23,7 +23,9 @@
>  
>  // Forward declarations
>  namespace gnash {
> -    class asClass;
> +    namespace abc {
> +        class Class;
> +    }
>      class ClassHierarchy;
>      class string_table;
>  }
> @@ -73,7 +75,7 @@
>  
>       /// Add a class to the namespace. The namespace stores this, but
>       /// does not take ownership. (So don't delete it.)
> -     bool addClass(string_table::key name, asClass *a)
> +     bool addClass(string_table::key name, abc::Class *a)
>       {
>               if (getClassInternal(name)) return false;
>               _classes[static_cast<std::size_t>(name)] = a;
> @@ -84,11 +86,11 @@
>  
>       /// Get the named class. Returns NULL if information is not known
>       /// about the class. (Stubbed classes still return NULL here.)
> -     asClass* getClass(string_table::key name) 
> +     abc::Class* getClass(string_table::key name) 
>       {
>               if (mRecursePrevent) return NULL;
>  
> -             asClass* found = getClassInternal(name);
> +             abc::Class* found = getClassInternal(name);
>  
>               if (found || !getParent()) return found;
>  
> @@ -118,7 +120,7 @@
>       string_table::key _uri;
>       string_table::key _prefix;
>  
> -     typedef std::map<string_table::key, asClass*> container;
> +     typedef std::map<string_table::key, abc::Class*> container;
>       container _classes;
>       mutable bool mRecursePrevent;
>  
> @@ -126,7 +128,7 @@
>       bool _protected;
>       bool _package;
>  
> -     asClass* getClassInternal(string_table::key name) const
> +     abc::Class* getClassInternal(string_table::key name) const
>       {
>               container::const_iterator i;
>               
> 
> === added directory 'libcore/abc'
> === renamed file 'libcore/parser/AbcBlock.cpp' => 'libcore/abc/AbcBlock.cpp'
> --- a/libcore/parser/AbcBlock.cpp     2009-11-15 16:26:27 +0000
> +++ b/libcore/abc/AbcBlock.cpp        2009-11-16 14:42:56 +0000
> @@ -24,7 +24,7 @@
>  #include "VM.h"
>  #include "log.h"
>  #include "ClassHierarchy.h"
> -#include "asClass.h"
> +#include "Class.h"
>  #include "namedStrings.h"
>  #include "CodeStream.h"
>  #include "action_buffer.h"
> @@ -36,7 +36,7 @@
>  namespace abc {
>  
>  bool
> -Trait::finalize(AbcBlock *pBlock, asClass *pClass, bool do_static)
> +Trait::finalize(AbcBlock *pBlock, abc::Class *pClass, bool do_static)
>  {
>       log_abc("Finalize class %s (%s), trait kind: %s", 
>              pBlock->_stringTable->value(pClass->getName()), pClass, _kind);
> @@ -47,7 +47,7 @@
>       case KIND_CONST:
>       {
>               // Validate the type.
> -             asClass *pType;
> +             abc::Class *pType;
>               if (_typeIndex) {
>                       log_abc("Trait type: %s", 
>                  pBlock->_stringPool[
> @@ -115,7 +115,7 @@
>  }
>  
>  bool
> -Trait::finalize_mbody(AbcBlock *pBlock, asMethod *pMethod)
> +Trait::finalize_mbody(AbcBlock *pBlock, Method *pMethod)
>  {
>       log_abc("Finalizing method trait: kind %s", _kind);
>       switch (_kind)
> @@ -124,7 +124,7 @@
>       case KIND_CONST:
>       {
>               // Validate the type.
> -             asClass *pType;
> +             abc::Class *pType;
>               if (_typeIndex) {
>                       pType = 
> pBlock->locateClass(pBlock->_multinamePool[_typeIndex]);
>          }
> @@ -329,7 +329,7 @@
>  {
>  
>      std::for_each(_classes.begin(), _classes.end(),
> -            std::mem_fun(&asClass::initPrototype));
> +            std::mem_fun(&abc::Class::initPrototype));
>  
>      // The last (entry) script has Global as its prototype.
>      // This can be deduced because the global classes are initialized with a
> @@ -341,10 +341,10 @@
>      // scripts have Global as a target object (prototype), so for now we
>      // will do that.
>      std::for_each(_scripts.begin(), _scripts.end(),
> -            boost::bind(&asClass::setPrototype, _1, mach->global()));
> +            boost::bind(&abc::Class::setPrototype, _1, mach->global()));
>   
>      std::for_each(_methods.begin(), _methods.end(),
> -            boost::bind(&asMethod::initPrototype, _1, mach));
> +            boost::bind(&Method::initPrototype, _1, mach));
>  
>      std::for_each(_traits.begin(), _traits.end(),
>              boost::bind(&Trait::finalize, _1, this));
> @@ -405,7 +405,7 @@
>       log_abc("Namespace: %s AbcURI=%u URI=%u.", name, ABCName, global_key);
>  }
>  
> -asClass*
> +abc::Class*
>  AbcBlock::locateClass(const std::string& className)
>  {
>  
> @@ -436,10 +436,10 @@
>  
>  }
>  
> -asClass*
> +abc::Class*
>  AbcBlock::locateClass(MultiName& m)
>  {
> -     asClass* found = 0;
> +     abc::Class* found = 0;
>  
>       if (m.getNamespace())
>       {
> @@ -798,7 +798,7 @@
>       for (unsigned int i = 0; i < count; ++i)
>       {
>               log_abc(" Reading method %u", i);
> -             asMethod *pMethod = mCH->newMethod();
> +             Method *pMethod = mCH->newMethod();
>               pMethod->setMethodID(i);
>               _methods[i] = pMethod;
>               boost::uint32_t param_count = _stream->read_V32();
> @@ -826,7 +826,7 @@
>              // TODO: this can be 'void', which clearly isn't a class, so this
>              // seems bogus. As setReturnType is a no-op, we should log it
>              // and ignore it.
> -            asClass* rtClass = locateClass(_multinamePool[return_type]);
> +            abc::Class* rtClass = locateClass(_multinamePool[return_type]);
>              if (!rtClass) {
>                  log_abc(_("ABC: Unknown return type."));
>              }
> @@ -851,7 +851,7 @@
>                       
>              // A value of 0 is legitimate, meaning 'any (*)'. 
>              if (ptype) {
> -                asClass* param_type = locateClass(_multinamePool[ptype]);
> +                abc::Class* param_type = locateClass(_multinamePool[ptype]);
>  
>                  if (!param_type) {
>                      log_abc((_("ABC: Unknown parameter type.")));
> @@ -939,7 +939,7 @@
>       log_abc("There are %u instances.", count);
>       _classes.resize(count);
>       for (size_t i = 0; i < count; ++i) {
> -             asClass* pClass;
> +             abc::Class* pClass;
>               //Read multiname index.
>               boost::uint32_t index = _stream->read_V32();
>               // 0 is allowed as a name, typically for the last entry.
> @@ -996,7 +996,7 @@
>                       pClass->setSuper(mTheObject);
>               }
>               else {
> -                     asClass *pSuper = 
> locateClass(_multinamePool[super_index]);
> +                     abc::Class *pSuper = 
> locateClass(_multinamePool[super_index]);
>                       if (!pSuper)
>                       {
>                               log_error(_("ABC: Super type not found (%s)"), 
> @@ -1061,7 +1061,7 @@
>                               log_error(_("ABC: Bad name for interface."));
>                               return false;
>                       }
> -                     asClass *pInterface = 
> locateClass(_multinamePool[i_index]);
> +                     abc::Class *pInterface = 
> locateClass(_multinamePool[i_index]);
>                       // These may be undefined still, so don't check 
> interface just yet.
>                       if (0) //!pInterface || !pInterface->isInterface())
>                       {
> @@ -1083,8 +1083,8 @@
>               // Don't validate for previous owner.
>               pClass->setConstructor(_methods[offset]);
>  
> -             /*      Calling the asMethod::setOwner always results in a 
> segmentation fault, 
> -             since it tries to modify asMethod.mPrototype, which is never
> +             /*      Calling the Method::setOwner always results in a 
> segmentation fault, 
> +             since it tries to modify Method.mPrototype, which is never
>               initialized.  The parser seems to work ok without this call.*/
>  //           _methods[offset]->setOwner(pClass);
>  
> @@ -1112,7 +1112,7 @@
>       log_abc("There are %u classes.", count);
>       
>      for (size_t i = 0; i < count; ++i) {
> -             asClass* pClass = _classes[i];
> +             abc::Class* pClass = _classes[i];
>               boost::uint32_t offset = _stream->read_V32();
>               log_abc("Class %u(%s) static constructor index=%u", i, pClass, 
> offset);
>  
> @@ -1124,8 +1124,8 @@
>               // Don't validate for previous owner.
>               pClass->setStaticConstructor(_methods[offset]);
>  
> -             /*      Calling the asMethod::setOwner always results in a 
> segmentation fault, 
> -             since it tries to modify asMethod.mPrototype, which is never
> +             /*      Calling the Method::setOwner always results in a 
> segmentation fault, 
> +             since it tries to modify Method.mPrototype, which is never
>               initialized.  The parser seems to work ok without this call.*/
>  //           _methods[offset]->setOwner(pClass);
>               
> @@ -1152,7 +1152,7 @@
>       _scripts.resize(count);
>       for (unsigned int i = 0; i < count; ++i)
>       {
> -             asClass* pScript = mCH->newClass();
> +             abc::Class* pScript = mCH->newClass();
>               _scripts[i] = pScript;
>  
>               boost::uint32_t offset = _stream->read_V32();
> @@ -1164,8 +1164,8 @@
>                       return false;
>               }
>  
> -             // Calling the asMethod::setOwner always results in a 
> segmentation
> -        // fault, since it tries to modify asMethod.mPrototype, which is 
> never
> +             // Calling the Method::setOwner always results in a segmentation
> +        // fault, since it tries to modify Method.mPrototype, which is never
>               // initialized.  The parser seems to work ok without this call.
>               // Don't validate for previous owner.
>  //           _methods[offset]->setOwner(pScript);
> @@ -1208,7 +1208,7 @@
>                       return false;
>               }
>  
> -        asMethod& method = *_methods[offset];
> +        Method& method = *_methods[offset];
>  
>               if (method.getBody()) {
>                       log_error(_("ABC: Only one body per method."));
> @@ -1260,7 +1260,7 @@
>                               pExcept->catchAny();
>                       }
>                       else {
> -                             asClass *pType = 
> locateClass(_multinamePool[catch_type]);
> +                             abc::Class *pType = 
> locateClass(_multinamePool[catch_type]);
>                               if (!pType) {
>  
>                                       log_error(_("ABC: Unknown type of 
> object to catch. (%s)"), 
> @@ -1359,7 +1359,7 @@
>               IF_VERBOSE_PARSE(_methods[i]->print_body());
>       }
>  /*   The loop below causes a segmentation fault, because it tries to modify 
> -     asMethod.mPrototype, which is never initialized.  The parser seems 
> +     Method.mPrototype, which is never initialized.  The parser seems 
>       to work ok without this call.*/
>  /*   std::vector<Trait*>::iterator i = mTraits.begin();
>       for ( ; i != mTraits.end(); ++i)
> 
> === renamed file 'libcore/parser/AbcBlock.h' => 'libcore/abc/AbcBlock.h'
> --- a/libcore/parser/AbcBlock.h       2009-11-15 16:26:27 +0000
> +++ b/libcore/abc/AbcBlock.h  2009-11-16 14:42:56 +0000
> @@ -35,14 +35,16 @@
>      namespace abc {
>          class AbcBlock;
>          class Machine;
> +        class Class;
> +        class Method;
>      }
>      class SWFStream; // for read signature
>      class ClassHierarchy;
> -    class asMethod;
> -    class asClass;
>  }
>  
>  namespace gnash {
> +
> +/// ABC-only resources for parsing and execution.
>  namespace abc {
>  
>  class Trait
> @@ -73,11 +75,11 @@
>       string_table::key _globalName;
>  
>       Namespace* _namespace;
> -     asMethod* _method;
> +     Method* _method;
>       bool _valueSet;
>  
> -     asClass* _classTarget;
> -     asMethod* _methodTarget;
> +     abc::Class* _classTarget;
> +     Method* _methodTarget;
>       bool _static;
>  
>       Trait()
> @@ -100,16 +102,16 @@
>  
>       bool read(SWFStream* in, AbcBlock *pBlock);
>  
> -     bool finalize(AbcBlock* pBlock, asClass* pClass, bool do_static);
> -
> -     bool finalize_mbody(AbcBlock* pBlock, asMethod* pMethod);
> -
> -     void set_target(asClass* pClass, bool do_static) {
> +     bool finalize(AbcBlock* pBlock, abc::Class* pClass, bool do_static);
> +
> +     bool finalize_mbody(AbcBlock* pBlock, Method* pMethod);
> +
> +     void set_target(abc::Class* pClass, bool do_static) {
>          _classTarget = pClass;
>          _static = do_static;
>      }
>  
> -     void set_target(asMethod *pMethod) {
> +     void set_target(Method *pMethod) {
>          _classTarget = 0;
>          _methodTarget = pMethod;
>      }
> @@ -138,12 +140,13 @@
>  
>  }
>  
> +
> +/// The ActionScript bytecode of a single ABC tag in a SWF.
> +//
>  /// ABC blocks have their own "names" for all resources. In Gnash, these are
>  /// a string table index. They are different from global names. These are 
> used
>  /// to locate resources inside the ABC block.
>  // 
> -/// Namespaces
> -//
>  /// ABC blocks have a set of "namespace" resources. Some namespaces are
>  /// private. We make these into anonymous namespaces.
>  // 
> @@ -230,9 +233,9 @@
>  
>       AbcBlock();
>  
> -    asClass* locateClass(MultiName &m);
> +    abc::Class* locateClass(MultiName &m);
>  
> -     asClass* locateClass(const std::string& className);
> +     abc::Class* locateClass(const std::string& className);
>  
>       abc::Trait &newTrait()
>       {
> @@ -245,7 +248,7 @@
>  
>       void update_global_name(unsigned int multiname_index);
>  
> -    const std::vector<asClass*>& scripts() const {
> +    const std::vector<abc::Class*>& scripts() const {
>          return _scripts;
>      }
>  
> @@ -269,7 +272,7 @@
>          return _doublePool[i];
>      }
>  
> -    asMethod* methodPoolAt(size_t i) const {
> +    Method* methodPoolAt(size_t i) const {
>          checkBounds(i, _methods);
>          return _methods[i];
>      }
> @@ -279,7 +282,7 @@
>          return _multinamePool[i];
>      }
>  
> -    asClass* classPoolAt(size_t i) const {
> +    abc::Class* classPoolAt(size_t i) const {
>          checkBounds(i, _classes);
>          return _classes[i];
>      }
> @@ -329,16 +332,16 @@
>       std::vector<string_table::key> _stringPoolTableIDs;
>       std::vector<Namespace*> _namespacePool;
>       std::vector<NamespaceSet> _namespaceSetPool;
> -     std::vector<asMethod*> _methods;
> +     std::vector<Method*> _methods;
>       std::vector<MultiName> _multinamePool;
> -     std::vector<asClass*> _classes; 
> -     std::vector<asClass*> _scripts;
> -     std::vector<abc::Trait*> _traits;
> +     std::vector<Class*> _classes; 
> +     std::vector<Class*> _scripts;
> +     std::vector<Trait*> _traits;
>  
>       string_table* _stringTable;
>       SWFStream* _stream; // Not stored beyond one read.
>  
> -     asClass *mTheObject;
> +     abc::Class *mTheObject;
>       ClassHierarchy *mCH;
>  
>       boost::uint32_t mVersion;
> 
> === renamed file 'libcore/asBoundValues.h' => 'libcore/abc/BoundValues.h'
> --- a/libcore/asBoundValues.h 2009-05-14 10:30:48 +0000
> +++ b/libcore/abc/BoundValues.h       2009-11-16 14:42:56 +0000
> @@ -19,43 +19,45 @@
>  #define GNASH_AS_BOUND_VALUES_H
>  
>  namespace gnash {
> -
> -class asBoundValue;
> -
> -class asBoundAccessor
> +namespace abc {
> +
> +class BoundValue;
> +
> +class BoundAccessor
>  {
>  public:
> -     bool setGetter(asMethod *p) { mGetter = p; return true; }
> -     bool setSetter(asMethod *p) { _setter = p; return true; }
> -     bool setValue(asBoundValue *p) { mValue = p; return true; }
> +     bool setGetter(Method *p) { mGetter = p; return true; }
> +     bool setSetter(Method *p) { _setter = p; return true; }
> +     bool setValue(BoundValue *p) { mValue = p; return true; }
>  
> -     asBoundValue* getValue() { return mValue; }
> -     asMethod *getGetter() { return mGetter; }
> -     asMethod *getSetter() { return _setter; }
> +     BoundValue* getValue() { return mValue; }
> +     Method *getGetter() { return mGetter; }
> +     Method *getSetter() { return _setter; }
>  
>  private:
> -     asMethod *mGetter;
> -     asMethod *_setter;
> -     asBoundValue *mValue;
> +     Method *mGetter;
> +     Method *_setter;
> +     BoundValue *mValue;
>  };
>  
> -class asBoundValue 
> +class BoundValue 
>  {
>  public:
> -     asBoundValue() : mConst(false), mValue()
> +     BoundValue() : mConst(false), mValue()
>       { mValue.set_undefined(); }
>       void setValue(as_value &v) { mValue = v; }
>       as_value getCurrentValue() { return mValue; }
>  
> -     void setType(asClass *t) { mType = t; }
> -     asClass *getType() { return mType; }
> +     void setType(Class *t) { mType = t; }
> +     Class *getType() { return mType; }
>  
>  private:
>       bool mConst;
> -     asClass *mType;
> +     Class *mType;
>       as_value mValue;
>  };
>  
> +} // namespace abc
>  } // namespace gnash
>  
>  #endif
> 
> === renamed file 'libcore/asClass.cpp' => 'libcore/abc/Class.cpp'
> --- a/libcore/asClass.cpp     2009-11-15 16:26:27 +0000
> +++ b/libcore/abc/Class.cpp   2009-11-16 14:42:56 +0000
> @@ -19,7 +19,7 @@
>  #include "gnashconfig.h"
>  #endif
>  
> -#include "asClass.h"
> +#include "Class.h"
>  #include "as_object.h"
>  #include "ClassHierarchy.h"
>  #include "VM.h"
> @@ -29,16 +29,17 @@
>  #include "Global_as.h"
>  
>  #ifdef ENABLE_AVM2
> -#include "asMethod.h"
> +#include "Method.h"
>  #include "abc_function.h"
>  #endif
>  
>  namespace gnash {
> +namespace abc {
>  
>  #ifdef ENABLE_AVM2    
>  bool
> -asClass::addValue(string_table::key name, Namespace *ns,
> -        boost::uint32_t slotId, asClass *type, as_value& val, bool isconst,
> +Class::addValue(string_table::key name, Namespace *ns,
> +        boost::uint32_t slotId, Class *type, as_value& val, bool isconst,
>          bool isstatic)
>  {
>      Global_as* g = VM::get().getGlobal();
> @@ -65,25 +66,25 @@
>       return true;
>  }
>  bool
> -asClass::addMemberClass(string_table::key name, Namespace *ns,
> -     boost::uint32_t slotId, asClass *type, bool isstatic)
> +Class::addMemberClass(string_table::key name, Namespace *ns,
> +     boost::uint32_t slotId, Class *type, bool isstatic)
>  {
>       return addSlot(name, ns, slotId, type, isstatic);
>  }
>  
>  bool
> -asClass::addSlotFunction(string_table::key name, Namespace *ns,
> -     boost::uint32_t slotId, asMethod *method, bool isstatic)
> +Class::addSlotFunction(string_table::key name, Namespace *ns,
> +     boost::uint32_t slotId, Method *method, bool isstatic)
>  {
> -     asClass a;
> +     Class a;
>       a.setName(NSV::CLASS_FUNCTION);
>       as_value b(method->getPrototype());
>       return addValue(name, ns, slotId, &a, b, false, isstatic);
>  }
>  
>  bool
> -asClass::addSlot(string_table::key name, Namespace* ns,
> -        boost::uint32_t slotId, asClass* /*type*/, bool /*isstatic*/)
> +Class::addSlot(string_table::key name, Namespace* ns,
> +        boost::uint32_t slotId, Class* /*type*/, bool /*isstatic*/)
>  {
>       string_table::key nsname = ns ? ns->getURI() : 0;
>  
> @@ -98,8 +99,8 @@
>  }
>  
>      bool
> -asClass::addMethod(string_table::key name, Namespace* /*ns*/,
> -        asMethod* method, bool /*isstatic*/)
> +Class::addMethod(string_table::key name, Namespace* /*ns*/,
> +        Method* method, bool /*isstatic*/)
>  {
>       as_value val = new abc::abc_function(method,
>              getVM(*_prototype).getMachine());
> @@ -114,7 +115,7 @@
>  
>  
>  bool
> -asClass::addGetter(string_table::key name, Namespace *ns, asMethod *method,
> +Class::addGetter(string_table::key name, Namespace *ns, Method *method,
>       bool isstatic)
>  {
>       string_table::key nsname = ns ? ns->getURI() : string_table::key(0);
> @@ -135,7 +136,7 @@
>  }
>  
>  bool
> -asClass::addSetter(string_table::key name, Namespace *ns, asMethod *method,
> +Class::addSetter(string_table::key name, Namespace *ns, Method *method,
>       bool isstatic)
>  {
>       string_table::key nsname = ns ? ns->getURI() : string_table::key(0);
> @@ -157,7 +158,7 @@
>  
>  #if 0 // TODO
>  void
> -asClass::buildFromPrototype(as_object *o, string_table::key name,
> +Class::buildFromPrototype(as_object *o, string_table::key name,
>       ClassHierarchy *pCH)
>  {
>       setName(name);
> @@ -184,8 +185,8 @@
>  }
>  
>  bool
> -asClass::addValue(string_table::key name, Namespace *ns, boost::uint32_t 
> slotId,
> -     asClass *type, as_value& val, bool isconst, bool isstatic,
> +Class::addValue(string_table::key name, Namespace *ns, boost::uint32_t 
> slotId,
> +     Class *type, as_value& val, bool isconst, bool isstatic,
>       ClassHierarchy *CH)
>  {
>       asBoundValue *bv = CH->newBoundValue();
> @@ -197,8 +198,8 @@
>  }
>  
>  bool
> -asClass::addSlot(string_table::key name, Namespace *ns, boost::uint32_t 
> slotId,
> -     asClass *type, bool isstatic, ClassHierarchy *CH)
> +Class::addSlot(string_table::key name, Namespace *ns, boost::uint32_t slotId,
> +     Class *type, bool isstatic, ClassHierarchy *CH)
>  {
>       asBoundValue *bv = CH->newBoundValue();
>       bv->setType(type);
> @@ -208,7 +209,7 @@
>  }
>  
>  bool
> -asClass::addMethod(string_table::key name, Namespace *ns, asMethod *method,
> +Class::addMethod(string_table::key name, Namespace *ns, Method *method,
>       bool isstatic)
>  {
>       if (!isstatic)
> @@ -218,8 +219,8 @@
>  }
>  
>  bool
> -asClass::addMemberClass(string_table::key name, Namespace *ns,
> -     boost::uint32_t slotId, asClass *type, bool isstatic)
> +Class::addMemberClass(string_table::key name, Namespace *ns,
> +     boost::uint32_t slotId, Class *type, bool isstatic)
>  {
>       if (!isstatic)
>               return addBinding(name, asBinding(ns, type, slotId, isstatic));
> @@ -228,8 +229,8 @@
>  
>  // TODO: Figure out how this differs from addMethod
>  bool
> -asClass::addSlotFunction(string_table::key name, Namespace *ns,
> -     boost::uint32_t slotId, asMethod *method, bool isstatic)
> +Class::addSlotFunction(string_table::key name, Namespace *ns,
> +     boost::uint32_t slotId, Method *method, bool isstatic)
>  {
>       if (!isstatic)
>               return addBinding(name, asBinding(ns, method, slotId, 
> isstatic));
> @@ -239,4 +240,5 @@
>  
>  #endif
>  
> -} /* namespace gnash */
> +} // namespace abc 
> +} // namespace gnash 
> 
> === renamed file 'libcore/asClass.h' => 'libcore/abc/Class.h'
> --- a/libcore/asClass.h       2009-11-15 16:26:27 +0000
> +++ b/libcore/abc/Class.h     2009-11-16 14:42:56 +0000
> @@ -28,8 +28,8 @@
>  #include <iostream>
>  #include "string_table.h"
>  #include "as_value.h"
> +#include "as_object.h"
>  #include "Property.h"
> -#include "as_function.h"
>  
>  #ifdef ENABLE_AVM2
>  # include "CodeStream.h"
> @@ -41,31 +41,31 @@
>          class Machine;
>          class MultiName;
>          class abc_function;
> +        class BoundValue;
> +        class BoundAccessor;
> +        class Method;
> +        class Class;
> +        typedef Property Binding;
>      }
> -    class as_function;
>      class Namespace;
> -    class asMethod;
> -    class asClass;
> -    typedef Property asBinding;
> -    class asBoundValue;
> -    class asBoundAccessor;
>      class ClassHierarchy;
>      class Property;
>  }
>  
>  namespace gnash {
> - 
> +namespace abc {
> +
>  /// 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.
> -class asClass
> +class Class
>  {
>  public:
>  
> -     asClass()
> +     Class()
>          :
>          _prototype(0),
>          _final(false),
> @@ -104,27 +104,27 @@
>  #ifdef ENABLE_AVM2
>  
>       bool addValue(string_table::key name, Namespace *ns,
> -            boost::uint32_t slotID, asClass *type, as_value& val,
> +            boost::uint32_t slotID, Class *type, as_value& val,
>              bool isconst, bool isstatic);
>  
>       bool addSlot(string_table::key name, Namespace *ns,
> -            boost::uint32_t slotID, asClass *type, bool isstatic);
> -
> -     bool addMethod(string_table::key name, Namespace *ns, asMethod *method,
> -             bool isstatic);
> -
> -     bool addGetter(string_table::key name, Namespace *ns, asMethod *method,
> -             bool isstatic);
> -
> -     bool addSetter(string_table::key name, Namespace *ns, asMethod *method,
> +            boost::uint32_t slotID, Class *type, bool isstatic);
> +
> +     bool addMethod(string_table::key name, Namespace *ns, Method *method,
> +             bool isstatic);
> +
> +     bool addGetter(string_table::key name, Namespace *ns, Method *method,
> +             bool isstatic);
> +
> +     bool addSetter(string_table::key name, Namespace *ns, Method *method,
>               bool isstatic);
>  
>       bool addMemberClass(string_table::key name, Namespace *ns,
> -             boost::uint32_t slotID, asClass *type, bool isstatic);
> +             boost::uint32_t slotID, Class *type, bool isstatic);
>  
>       // TODO: Figure out how this differs from addMethod
>       bool addSlotFunction(string_table::key name, Namespace *ns,
> -             boost::uint32_t slotID, asMethod *method, bool isstatic);
> +             boost::uint32_t slotID, Method *method, bool isstatic);
>  
>       /// Is the class final?
>       bool isFinal() const { return _final; }
> @@ -182,28 +182,28 @@
>      }
>  
>       /// What is the type of our parent class?
> -     asClass* getSuper() const { return _super; }
> +     Class* getSuper() const { return _super; }
>  
>       /// We implement this interface.
> -     void pushInterface(asClass* p) { _interfaces.push_back(p); }
> +     void pushInterface(Class* p) { _interfaces.push_back(p); }
>  
>       /// This is our constructor.
> -     void setConstructor(asMethod *m) { _constructor = m; }
> -     asMethod *getConstructor() { return _constructor; }
> +     void setConstructor(Method *m) { _constructor = m; }
> +     Method *getConstructor() { return _constructor; }
>  
> -     void setStaticConstructor(asMethod *m) { _staticConstructor = m; }
> +     void setStaticConstructor(Method *m) { _staticConstructor = m; }
>       
> -    asMethod* getStaticConstructor() const { 
> +    Method* getStaticConstructor() const { 
>          return _staticConstructor;
>      }
>  
> -     void setSuper(asClass *p) { _super = p; }
> +     void setSuper(Class *p) { _super = p; }
>  
> -     /// Try to build an asClass object from just a prototype.
> +     /// Try to build an Class object from just a prototype.
>       void buildFro_prototype(as_object *o, string_table::key name,
>               ClassHierarchy *);
>  
> -     asBinding *getBinding(string_table::key name)
> +     Binding *getBinding(string_table::key name)
>       {
>               BindingContainer::iterator i;
>               if (_bindings.empty()) return NULL;
> @@ -213,24 +213,24 @@
>               return &i->second;
>       }
>  
> -     asBinding* getGetBinding(as_value& v, abc::MultiName& n);
> -     asBinding* getSetBinding(as_value& v, abc::MultiName& n);
> +     Binding* getGetBinding(as_value& v, abc::MultiName& n);
> +     Binding* getSetBinding(as_value& v, abc::MultiName& n);
>      std::vector<abc::Trait> _traits;
>  
>  #endif
>  
>  private:
>       
> -     typedef std::map<string_table::key, asBinding> BindingContainer;
> +     typedef std::map<string_table::key, Binding> BindingContainer;
>  
>      as_object *_prototype;
>  
> -     bool addBinding(string_table::key name, asBinding b)
> +     bool addBinding(string_table::key name, Binding b)
>       { _bindings[name] = b; return true; }
> -     bool addStaticBinding(string_table::key name, asBinding b)
> +     bool addStaticBinding(string_table::key name, Binding b)
>       { _staticBindings[name] = b; return true; }
>  
> -     asBinding *getStaticBinding(string_table::key name)
> +     Binding *getStaticBinding(string_table::key name)
>       {
>               BindingContainer::iterator i;
>               if (_staticBindings.empty())
> @@ -246,11 +246,11 @@
>       bool _dynamic;
>       bool _interface;
>       string_table::key _name;
> -     std::list<asClass*> _interfaces;
> +     std::list<Class*> _interfaces;
>       Namespace* _protectedNs;
> -     asClass* _super;
> -     asMethod* _constructor;
> -     asMethod* _staticConstructor;
> +     Class* _super;
> +     Method* _constructor;
> +     Method* _staticConstructor;
>  
>       BindingContainer _bindings;
>       BindingContainer _staticBindings;
> @@ -259,6 +259,7 @@
>       bool _system;
>  };
>  
> +} // namespace abc 
>  } // namespace gnash
>  
>  #endif 
> 
> === renamed file 'libcore/asMethod.cpp' => 'libcore/abc/Method.cpp'
> --- a/libcore/asMethod.cpp    2009-11-15 16:26:27 +0000
> +++ b/libcore/abc/Method.cpp  2009-11-16 14:42:56 +0000
> @@ -19,16 +19,17 @@
>  #include "gnashconfig.h"
>  #endif
>  
> -#include "asMethod.h"
> -#include "asClass.h"
> +#include "Method.h"
> +#include "Class.h"
>  #include "CodeStream.h"
>  #include "abc_function.h"
>  #include "Global_as.h"
>  #include "VM.h"
>  
>  namespace gnash {
> +namespace abc {
>  
> -asMethod::asMethod()
> +Method::Method()
>      :
>      _methodID(0),
>      _prototype(0),
> @@ -48,7 +49,7 @@
>  }
>  
>  void
> -asMethod::print_body()
> +Method::print_body()
>  {
>               if (!_body) {
>                       log_parse("Method has no body.");
> @@ -64,9 +65,9 @@
>  }
>  
>  void
> -asMethod::setOwner(asClass *pOwner)
> +Method::setOwner(Class *pOwner)
>  {
> -     log_debug("asMethod::setOwner");
> +     log_debug("Method::setOwner");
>       if (!_prototype) {
>               log_debug("ERROR _prototype is null.");
>       }
> @@ -74,14 +75,14 @@
>  }
>  
>  void
> -asMethod::setReturnType(asClass* /*type*/)
> +Method::setReturnType(Class* /*type*/)
>  {
>       /* No-op */
>  }
>  
>  bool
> -asMethod::addValue(string_table::key name, Namespace *ns,
> -        boost::uint32_t slotId, asClass *type, as_value& val, bool isconst)
> +Method::addValue(string_table::key name, Namespace *ns,
> +        boost::uint32_t slotId, Class *type, as_value& val, bool isconst)
>  {
>      Global_as* g = VM::get().getGlobal();
>       if (val.is_object()) {
> @@ -105,7 +106,7 @@
>  }
>  
>  bool
> -asMethod::addGetter(string_table::key name, Namespace *ns, asMethod *method)
> +Method::addGetter(string_table::key name, Namespace *ns, Method *method)
>  {
>       string_table::key nsname = ns ? ns->getURI() : string_table::key(0);
>  
> @@ -123,7 +124,7 @@
>  }
>  
>  bool
> -asMethod::addSetter(string_table::key name, Namespace *ns, asMethod *method)
> +Method::addSetter(string_table::key name, Namespace *ns, Method *method)
>  {
>       string_table::key nsname = ns ? ns->getURI() : string_table::key(0);
>  
> @@ -141,15 +142,15 @@
>  }
>  
>  bool
> -asMethod::addMemberClass(string_table::key name, Namespace *ns,
> -     boost::uint32_t slotId, asClass *type)
> +Method::addMemberClass(string_table::key name, Namespace *ns,
> +     boost::uint32_t slotId, Class *type)
>  {
>       return addSlot(name, ns, slotId, type);
>  }
>  
>  bool
> -asMethod::addSlot(string_table::key name, Namespace* ns, boost::uint32_t 
> slotId,
> -     asClass */*type*/)
> +Method::addSlot(string_table::key name, Namespace* ns, boost::uint32_t 
> slotId,
> +     Class */*type*/)
>  {
>       string_table::key nsname = ns ? ns->getURI() : string_table::key(0);
>       int flags = PropFlags::dontDelete;
> @@ -159,33 +160,33 @@
>  }
>  
>  bool
> -asMethod::addSlotFunction(string_table::key name, Namespace *ns,
> -     boost::uint32_t slotId, asMethod *method)
> +Method::addSlotFunction(string_table::key name, Namespace *ns,
> +     boost::uint32_t slotId, Method *method)
>  {
> -     asClass a;
> +     Class a;
>       a.setName(NSV::CLASS_FUNCTION);
>       as_value b(method->getPrototype());
>       return addValue(name, ns, slotId, &a, b, false);
>  }
>  
>  void
> -asMethod::initPrototype(abc::Machine* machine)
> +Method::initPrototype(abc::Machine* machine)
>  {
>       _prototype = new abc::abc_function(this,machine);
>  }
>  
>  bool
> -asMethod::addMethod(string_table::key /*name*/, Namespace* /*ns*/, asMethod*
> +Method::addMethod(string_table::key /*name*/, Namespace* /*ns*/, Method*
>          /*method*/)
>  {
>  //   string_table::key nsname = ns ? ns->getURI() : string_table::key(0);
>  //   as_value val(method->getPrototype());
> -//   as value val = new 
> as_value(abc_function(asMethod->getBody,getVM(_prototype).getMachine()));
> +//   as value val = new 
> as_value(abc_function(Method->getBody,getVM(_prototype).getMachine()));
>  //   _prototype->init_member(name, val, PropFlags::readOnly |
>  //           PropFlags::dontDelete | PropFlags::dontEnum, nsname);
>  //   return true;
>  return false;
>  }
>  
> -
> +} // namespace abc
>  } // namespace gnash
> 
> === renamed file 'libcore/asMethod.h' => 'libcore/abc/Method.h'
> --- a/libcore/asMethod.h      2009-11-15 16:26:27 +0000
> +++ b/libcore/abc/Method.h    2009-11-16 14:42:56 +0000
> @@ -34,26 +34,27 @@
>      namespace abc {
>          class Machine;
>          class abc_function;
> +     class Class;
>      }
>      class CodeStream;
>      class as_object;
> -    class asClass;
>  }
>  
>  namespace gnash {
> +namespace abc {
>  
>  typedef Property asBinding;
>  
>  /// A class to represent, abstractly, an ActionScript method.
>  ///
>  /// Methods are unnamed until they are bound to an object.
> -class asMethod
> +class Method
>  {
>  public:
>       
> -    typedef std::list<asClass*> ArgumentList;
> +    typedef std::list<Class*> ArgumentList;
>  
> -     asMethod();
> +     Method();
>  
>      boost::uint32_t methodID() const {
>          return _methodID;
> @@ -63,7 +64,7 @@
>          _methodID = m;
>      }
>  
> -     void initPrototype(abc::Machine* machine);
> +     void initPrototype(Machine* machine);
>  
>       boost::uint32_t getMaxRegisters() { return _maxRegisters;}
>  
> @@ -99,7 +100,7 @@
>          return _scopeDepth;
>      }
>  
> -    abc::abc_function* getPrototype() { return _prototype; }
> +    abc_function* getPrototype() { return _prototype; }
>  
>       asBinding* getBinding(string_table::key name);
>  
> @@ -123,45 +124,45 @@
>       void setBody(CodeStream *b) { _body = b; }
>  
>       bool addValue(string_table::key name, Namespace *ns,
> -            boost::uint32_t slotID, asClass *type, as_value& val, bool 
> isconst);
> +            boost::uint32_t slotID, Class *type, as_value& val, bool 
> isconst);
>  
>       bool addSlot(string_table::key name, Namespace *ns,
> -            boost::uint32_t slotID, asClass *type);
> -
> -     bool addMethod(string_table::key name, Namespace *ns, asMethod *method);
> -
> -     bool addGetter(string_table::key name, Namespace *ns, asMethod *method);
> -
> -     bool addSetter(string_table::key name, Namespace *ns, asMethod *method);
> +            boost::uint32_t slotID, Class *type);
> +
> +     bool addMethod(string_table::key name, Namespace *ns, Method *method);
> +
> +     bool addGetter(string_table::key name, Namespace *ns, Method *method);
> +
> +     bool addSetter(string_table::key name, Namespace *ns, Method *method);
>  
>       bool addMemberClass(string_table::key name, Namespace *ns,
> -             boost::uint32_t slotID, asClass *type);
> +             boost::uint32_t slotID, Class *type);
>       
>       bool addSlotFunction(string_table::key name, Namespace *ns,
> -             boost::uint32_t slotID, asMethod *method);
> +             boost::uint32_t slotID, Method *method);
>  
>       /// \brief
>       /// Set the owner of this method.
> -     void setOwner(asClass* s);
> +     void setOwner(Class* s);
>  
>       /// \brief
>       /// Get the unique identifier for the return type. 0 is 'anything'.
>       /// (This is the value of any dynamic property.)
>       /// Id reference: Type
> -     asClass* getReturnType() const;
> +     Class* getReturnType() const;
>  
>       /// Set the return type
>      //
>      /// TODO: This is currently a no-op, so find out what it's for and
>      /// implement it.
>      /// NB: the return type of a method can be * (any) or void, neither of
> -    /// which are asClasses, so this may not be an appropriate way to
> +    /// which are abc::Classes, so this may not be an appropriate way to
>      /// handle return type.
> -     void setReturnType(asClass* t);
> -
> -     asMethod *getSuper();
> -
> -     void setSuper(asMethod* s);
> +     void setReturnType(Class* t);
> +
> +     Method *getSuper();
> +
> +     void setSuper(Method* s);
>  
>       /// \brief
>       /// Is the method final? If so, it may not be overridden.
> @@ -219,7 +220,7 @@
>       /// Push an argument of type t into the method definition
>      //
>      /// A value of 0 stands for 'any'.
> -     void pushArgument(asClass* t) { _arguments.push_back(t); }
> +     void pushArgument(Class* t) { _arguments.push_back(t); }
>  
>       /// Push an optional argument's default value.
>       void pushOptional(const as_value& v) { _optionalArguments.push_back(v); 
> }
> @@ -265,7 +266,7 @@
>       
>      boost::uint32_t _methodID;
>  
> -    abc::abc_function* _prototype;
> +    abc_function* _prototype;
>       int _minArguments;
>       int _maxArguments;
>       boost::uint32_t _bodyLength;
> @@ -285,6 +286,7 @@
>  
>  };
>  
> +} // namespace abc
>  } // namespace gnash
>  
>  #endif
> 
> === renamed file 'libcore/vm/MultiName.h' => 'libcore/abc/MultiName.h'
> === renamed file 'libcore/abc_function.cpp' => 'libcore/abc/abc_function.cpp'
> --- a/libcore/abc_function.cpp        2009-11-15 16:26:27 +0000
> +++ b/libcore/abc/abc_function.cpp    2009-11-16 14:42:56 +0000
> @@ -17,14 +17,14 @@
>  
>  #include "log.h"
>  #include "abc_function.h"
> -#include "asClass.h"
> +#include "Class.h"
>  #include "fn_call.h"
>  #include "Machine.h"
>  
>  namespace gnash {
>  namespace abc {
>  
> -abc_function::abc_function(asMethod* methodInfo, Machine* machine)
> +abc_function::abc_function(Method* methodInfo, Machine* machine)
>      :
>      as_function(*machine->global()),
>      _methodInfo(methodInfo),
> 
> === renamed file 'libcore/abc_function.h' => 'libcore/abc/abc_function.h'
> --- a/libcore/abc_function.h  2009-11-15 16:26:27 +0000
> +++ b/libcore/abc/abc_function.h      2009-11-16 14:42:56 +0000
> @@ -25,11 +25,11 @@
>  #include "as_function.h"
>  #include "as_value.h"
>  #include "CodeStream.h"
> -#include "asClass.h"
> +#include "Class.h"
>  #include "SafeStack.h"
>  #include "as_object.h"
>  #include "as_environment.h"
> -#include "asMethod.h"
> +#include "Method.h"
>  
>  namespace gnash {
>  namespace abc {
> @@ -41,7 +41,7 @@
>  {
>  
>  public:
> -     abc_function(asMethod* methodInfo, Machine* machine);
> +     abc_function(Method* methodInfo, Machine* machine);
>  
>       as_value operator()(const fn_call& fn);
>  
> @@ -59,7 +59,7 @@
>  
>  private:
>  
> -    asMethod* _methodInfo;
> +    Method* _methodInfo;
>  
>      Machine* _machine;
>  
> 
> === renamed file 'libcore/asException.h' => 'libcore/abc/asException.h'
> --- a/libcore/asException.h   2009-11-13 08:19:10 +0000
> +++ b/libcore/abc/asException.h       2009-11-16 14:42:56 +0000
> @@ -27,7 +27,7 @@
>       void setEnd(boost::uint32_t i) { mEnd = i; }
>       void setCatch(boost::uint32_t i) { mCatch = i; }
>       void catchAny() { mCatchAny = true; }
> -     void setCatchType(asClass* p) { mCatchType = p; }
> +     void setCatchType(abc::Class* p) { mCatchType = p; }
>       void setNamespace(Namespace* n) { _namespace = n; }
>       void setName(string_table::key name) { _name = name; }
>  
> @@ -36,7 +36,7 @@
>       boost::uint32_t mEnd;
>       boost::uint32_t mCatch;
>       bool mCatchAny;
> -     asClass *mCatchType;
> +     abc::Class *mCatchType;
>       Namespace *_namespace;
>       string_table::key _name;
>  };
> 
> === modified file 'libcore/as_object.cpp'
> --- a/libcore/as_object.cpp   2009-11-16 12:34:46 +0000
> +++ b/libcore/as_object.cpp   2009-11-16 14:42:56 +0000
> @@ -44,7 +44,7 @@
>  #include <boost/algorithm/string/case_conv.hpp>
>  #include <utility> // for std::pair
>  #include "namedStrings.h"
> -#include "asClass.h"
> +#include "Class.h"
>  
>  
>  namespace gnash {
> 
> === modified file 'libcore/as_object.h'
> --- a/libcore/as_object.h     2009-11-16 12:17:00 +0000
> +++ b/libcore/as_object.h     2009-11-16 14:42:56 +0000
> @@ -43,6 +43,7 @@
>  namespace gnash {
>      namespace abc {
>          class Machine;
> +        class Class;
>      }
>      class as_function;
>      class MovieClip;
> @@ -51,7 +52,6 @@
>      class VM;
>      class IOChannel;
>      class movie_root;
> -    class asClass;
>      class RunResources;
>      class Global_as;
>  }
> @@ -164,7 +164,7 @@
>  ///
>  class as_object : public GcResource
>  {
> -    friend class asClass;
> +    friend class abc::Class;
>      friend class abc::Machine;
>  
>      typedef std::set<std::pair<string_table::key, string_table::key> >
> 
> === modified file 'libcore/parser/Makefile.am'
> --- a/libcore/parser/Makefile.am      2009-07-03 08:19:37 +0000
> +++ b/libcore/parser/Makefile.am      2009-11-16 14:01:20 +0000
> @@ -53,11 +53,6 @@
>       sound_definition.cpp \
>       sprite_definition.cpp
>  
> -if ENABLE_AVM2
> -libgnashparser_la_SOURCES += \
> -     AbcBlock.cpp
> -endif
> -
>  noinst_HEADERS = \
>       action_buffer.h \
>       BitmapMovieDefinition.h \
> @@ -67,11 +62,6 @@
>       sound_definition.h \
>       sprite_definition.h
>  
> -if ENABLE_AVM2
> -noinst_HEADERS += \
> -     AbcBlock.h
> -endif
> -
>  EXTENSIONS_API = \
>       movie_definition.h \
>       $(NULL)
> 
> === modified file 'libcore/vm/Machine.cpp'
> --- a/libcore/vm/Machine.cpp  2009-11-16 12:34:46 +0000
> +++ b/libcore/vm/Machine.cpp  2009-11-16 14:42:56 +0000
> @@ -125,7 +125,7 @@
>  
>  }
>  
> -inline asMethod*
> +inline Method*
>  pool_method(boost::uint32_t index, AbcBlock* pool)
>  {
>       if (!pool) throw ASException();
> @@ -137,7 +137,7 @@
>      }
>  }
>  
> -inline asClass*
> +inline Class*
>  pool_class(boost::uint32_t index, AbcBlock* pool)
>  {
>       if (!pool) throw ASException();
> @@ -1228,7 +1228,7 @@
>                  {
>                      boost::int32_t method_index = mStream->read_V32();
>                      log_abc("Creating new abc_function: method 
> index=%u",method_index);
> -                    asMethod *m = pool_method(method_index, mPoolObject);
> +                    Method *m = pool_method(method_index, mPoolObject);
>                      abc_function* new_function = m->getPrototype();
>                      
>                      push_stack(as_value(new_function));
> @@ -1328,7 +1328,7 @@
>                  ///  ..., argN)
>                  case SWF::ABC_ACTION_CALLSTATIC:
>                  {
> -                    asMethod *m = pool_method(mStream->read_V32(), 
> mPoolObject);
> +                    Method *m = pool_method(mStream->read_V32(), 
> mPoolObject);
>                      boost::uint32_t argc = mStream->read_V32();
>                      as_function *func = m->getPrototype();
>                      ENSURE_OBJECT(_stack.top(argc));
> @@ -1701,7 +1701,7 @@
>                  {
>                      boost::uint32_t cid = mStream->read_V32();
>                      log_abc("Class index: %s", cid);
> -                    asClass *c = pool_class(cid, mPoolObject);
> +                    Class *c = pool_class(cid, mPoolObject);
>                      log_abc("Creating new class id=%u name=%s", c->getName(),
>                              mST.value(c->getName()));
>                      
> @@ -1712,7 +1712,7 @@
>                      new_class->set_prototype(base_class);
>                      
>                      //Create the class.
> -                    asMethod* scmethod = c->getStaticConstructor();
> +                    Method* scmethod = c->getStaticConstructor();
>                      // What if there isn't one?
>                      assert(scmethod);
>                      
> @@ -2907,7 +2907,7 @@
>  } 
>  
>  void
> -Machine::getMember(asClass* pDefinition, MultiName& name,
> +Machine::getMember(Class* pDefinition, MultiName& name,
>       as_value& instance)
>  {
>       if (!instance.is_object())
> @@ -2931,7 +2931,7 @@
>  }
>  
>  void
> -Machine::setMember(asClass *pDefinition, MultiName& name, as_value& instance,
> +Machine::setMember(Class *pDefinition, MultiName& name, as_value& instance,
>       as_value& newvalue)
>  {
>       if (!instance.is_object())
> @@ -2988,13 +2988,13 @@
>       return size;
>  }
>  
> -asClass *
> +Class *
>  Machine::findSuper(as_value &v, bool find_for_primitive)
>  {
>       if (v.is_undefined() || v.is_null()) return NULL;
>  
>       if (v.is_object()) {
> -             asClass *pProto = NULL; // TODO: 
> v.to_object(*_global)->getClass();
> +             Class *pProto = NULL; // TODO: 
> v.to_object(*_global)->getClass();
>               return pProto ? pProto->getSuper() : NULL;
>       }
>  
> @@ -3135,9 +3135,9 @@
>  {
>       mPoolObject = pool_block;
>       log_debug("Getting entry script.");
> -     asClass* start_script = pool_block->scripts().back();
> +     Class* start_script = pool_block->scripts().back();
>       log_debug("Getting constructor.");
> -     asMethod* constructor = start_script->getConstructor();
> +     Method* constructor = start_script->getConstructor();
>       clearRegisters(constructor->getMaxRegisters());
>       log_debug("Loading code stream.");
>       mStream = constructor->getBody();
> @@ -3149,7 +3149,7 @@
>  //TODO: There is probably a better way to do this, once we understand what 
> the VM is supposed
>  //todo, this should be fixed.
>  as_value
> -Machine::executeFunction(asMethod* method, const fn_call& fn)
> +Machine::executeFunction(Method* method, const fn_call& fn)
>  {
>       
>      //TODO: Figure out a good way to use the State object to handle
> @@ -3211,7 +3211,7 @@
>  
>      log_debug("instantiateClass: class name %s", className);
>  
> -     asClass* cl = mPoolObject->locateClass(className);
> +     Class* cl = mPoolObject->locateClass(className);
>      if (!cl)
>      {
>          /// This seems like a big error.
> @@ -3219,7 +3219,7 @@
>          return;
>      }
>       
> -    asMethod* ctor = cl->getConstructor();
> +    Method* ctor = cl->getConstructor();
>  
>      if (!ctor) {
>          log_error("Class found has no constructor, can't instantiate "
> 
> === modified file 'libcore/vm/Machine.h'
> --- a/libcore/vm/Machine.h    2009-11-15 16:26:27 +0000
> +++ b/libcore/vm/Machine.h    2009-11-16 14:42:56 +0000
> @@ -23,7 +23,7 @@
>  #include <sstream>
>  #include "SafeStack.h"
>  #include "as_value.h"
> -#include "asClass.h"
> +#include "Class.h"
>  #include "SWF.h"
>  #include "as_environment.h"
>  #include "VM.h"
> @@ -46,6 +46,8 @@
>  
>  namespace abc {
>  
> +/// The virtual machine for executing ABC (ActionScript Bytecode).
> +//
>  /// This machine is intended to work without relying on the C++ call stack,
>  /// by resetting its Stream and Stack members (actually, by limiting the 
> stack)
>  /// to make function calls, rather than calling them directly in C++.
> @@ -97,7 +99,7 @@
>       /// the stack.
>       ///
>       /// @param name
> -     /// A partially filled asBoundName, this should be the id
> +     /// A partially filled MultiName, this should be the id
>       /// from the stream.
>       ///
>       /// @param initial
> @@ -118,7 +120,7 @@
>       ///
>       /// @return
>       /// Null if the superclass was not found, or the superclass.
> -     asClass* findSuper(as_value& obj, bool find_primitive);
> +     Class* findSuper(as_value& obj, bool find_primitive);
>  
>       /// Get a member from an object.
>       ///
> @@ -136,7 +138,7 @@
>       /// This returns the value, but on the stack.
>       /// (Since the return value is not known until after control has left
>       /// the caller of this, it's impossible to return a meaningful value.
> -     void getMember(asClass* pDefinition, MultiName& name,
> +     void getMember(Class* pDefinition, MultiName& name,
>              as_value& source);
>  
>       /// Set a member in an object.
> @@ -155,9 +157,9 @@
>       ///
>       /// @return
>       /// Nothing.
> -     void setMember(asClass*, MultiName&, as_value& target, as_value& val);
> +     void setMember(Class*, MultiName&, as_value& target, as_value& val);
>  
> -     asBinding* findProperty(MultiName&) { return NULL; }
> +     Binding* findProperty(MultiName&) { return NULL; }
>  
>       void execute();
>  
> @@ -236,7 +238,7 @@
>  
>       void initMachine(AbcBlock* pool_block);
>  
> -     as_value executeFunction(asMethod* function, const fn_call& fn);
> +     as_value executeFunction(Method* function, const fn_call& fn);
>  
>       void instantiateClass(std::string className, as_object* global);
>      /// Return the Global object for this Machine.
> 
> === modified file 'libcore/vm/Makefile.am'
> --- a/libcore/vm/Makefile.am  2009-11-16 12:29:31 +0000
> +++ b/libcore/vm/Makefile.am  2009-11-16 14:01:20 +0000
> @@ -27,6 +27,7 @@
>       -I$(top_srcdir)/libcore/asobj \
>       -I$(top_srcdir)/libcore/asobj/flash \
>       -I$(top_srcdir)/libcore/swf \
> +     -I$(top_srcdir)/libcore/abc \
>       -I$(top_srcdir)/libcore/parser \
>       -I$(top_srcdir)/libbase \
>       -I$(top_srcdir)/libamf \
> @@ -56,7 +57,6 @@
>  noinst_HEADERS = \
>       ASHandlers.h \
>       CodeStream.h \
> -     MultiName.h \
>       ActionExec.h \
>       ExecutableCode.h \
>       with_stack_entry.h \
> @@ -72,7 +72,6 @@
>  
>  if ENABLE_AVM2
>  noinst_HEADERS += \
> -     MultiName.h \
>       CodeStream.h \
>       Machine.h \
>       $(NULL)
> 

> _______________________________________________
> Gnash-commit mailing list
> address@hidden
> http://lists.gnu.org/mailman/listinfo/gnash-commit


-- 

 Free GIS & Flash consultant/developer      ()  ASCII Ribbon Campaign
 http://foo.keybit.net/~strk/services.html  /\  Keep it simple! 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]