Packageorg.as3commons.bytecode.emit
Interfacepublic interface IClassBuilder extends ITypeBuilder, flash.events.IEventDispatcher, IEmitObject, IMetadataContainer
Implementors ClassBuilder

Describes an object that can generate a class object to be added to an AbcFile which enables runtime class generation.



Public Properties
 PropertyDefined By
  constantPool : IConstantPool
IClassBuilder
  isDynamic : Boolean
If true the class that will be generated will be marked as dynamic.
IClassBuilder
 InheritedisFinal : Boolean
If true the class that will be generated will be marked as final.
ITypeBuilder
 InheritedisInternal : Boolean
If true the class that will be generated will be marked as internal.
ITypeBuilder
 Inheritedmetadata : Array
an Array of IMetadataBuilder instances that describe the metadata that will be generated for the current IMetadataContainer.
IMetadataContainer
 Inheritedname : String
The name of the current IEmitObject.
IEmitObject
 InheritednamespaceURI : String
The namespace URL that the current IEmitObject belongs to.
IEmitObject
 InheritedpackageName : String
The fully qualified package name for the current IEmitObject.
IEmitObject
 InheritedscopeName : String
The scope name that the current IEmitObject belongs to.
IEmitObject
  superClassName : String
The fully qualified superclass name for the class that will be generated.
IClassBuilder
 Inheritedtrait : TraitInfo
The TraitInfo that is associated with the current IEmitObject, this is usually generated automatically and needs not to be set.
IEmitObject
 Inheritedvisibility : MemberVisibility
The visibility of the current IEmitObject within the package.
IEmitObject
Public Methods
 MethodDefined By
 Inherited
build(applicationDomain:ApplicationDomain):Array
Internally used build method, this method should never be called by third parties.
ITypeBuilder
 Inherited
defineAccessor(name:String = null, type:String = null, initialValue:*):IAccessorBuilder
Creates an IAccessorBuilder (getter/setter) instance for the specified accessor name.
ITypeBuilder
  
Creates an ICtorBuilder instance that is able to generate the constructor method for the class to be generated.
IClassBuilder
 Inherited
defineMetadata(name:String = null, arguments:Array = null):IMetadataBuilder
Creates an IMetadataBuilder instance that is able to generate a metadata entry for the current IMetadataContainer.
IMetadataContainer
 Inherited
defineMethod(methodName:String = null, nameSpace:String = null):IMethodBuilder
Creates an IMethodBuilder instance for the specified method name.
ITypeBuilder
  
defineProperty(propertyName:String = null, type:String = null, initialValue:*):IPropertyBuilder
Creates an IPropertyBuilder instance for the specified property name.
IClassBuilder
  
implementInterface(name:String):void
Marks the generated class as an implementation of the specified fully qualified interface name.
IClassBuilder
  
implementInterfaces(names:Array):void
Marks the generated class as an implementation of the specified list of fully qualified interface names.
IClassBuilder
 Inherited
removeAccessor(name:String, nameSpace:String = null):void
ITypeBuilder
 Inherited
removeMethod(name:String, nameSpace:String = null):void
ITypeBuilder
  
removeProperty(name:String, nameSpace:String = null):void
IClassBuilder
Events
 Event Summary Defined By
  IClassBuilder
Property Detail
constantPoolproperty
constantPool:IConstantPool


Implementation
    public function get constantPool():IConstantPool
    public function set constantPool(value:IConstantPool):void
isDynamicproperty 
isDynamic:Boolean

If true the class that will be generated will be marked as dynamic.


Implementation
    public function get isDynamic():Boolean
    public function set isDynamic(value:Boolean):void
superClassNameproperty 
superClassName:String

The fully qualified superclass name for the class that will be generated. I.e. mx.events.FlexEvent.


Implementation
    public function get superClassName():String
    public function set superClassName(value:String):void
Method Detail
defineConstructor()method
public function defineConstructor():ICtorBuilder

Creates an ICtorBuilder instance that is able to generate the constructor method for the class to be generated.

Returns
ICtorBuilder — The specified ICtorBuilder.
defineProperty()method 
public function defineProperty(propertyName:String = null, type:String = null, initialValue:*):IPropertyBuilder

Creates an IPropertyBuilder instance for the specified property name.

Parameters

propertyName:String (default = null) — The name of the property. I.e. myProperty.
 
type:String (default = null) — The fully qualified type of the property. I.e. String or flash.utils.Dictionary.
 
initialValue:* (default = NaN) — The default value of the property. I.e. "My default value".

Returns
IPropertyBuilder — The specified IPropertyBuilder instance.
implementInterface()method 
public function implementInterface(name:String):void

Marks the generated class as an implementation of the specified fully qualified interface name.

This will NOT automatically add the methods defined in this interface.

Parameters

name:String — The specified fully qualifed interface name. I.e. mx.styles.IStyleClient.

implementInterfaces()method 
public function implementInterfaces(names:Array):void

Marks the generated class as an implementation of the specified list of fully qualified interface names.

This will NOT automatically add the methods defined in these interfaces.

Parameters

names:Array — The specified fully qualifed interface names. I.e. mx.styles.IStyleClient.

removeProperty()method 
public function removeProperty(name:String, nameSpace:String = null):void

Parameters

name:String
 
nameSpace:String (default = null)

Event Detail
extendedClassesNotFound Event
Event Object Type: org.as3commons.bytecode.emit.impl.event.ExtendedClassesNotFoundError