org.siebengeisslein.pclass
Class DelegatingType

java.lang.Object
  extended by org.siebengeisslein.client.Persistent
      extended by org.siebengeisslein.pclass.DelegatingType
All Implemented Interfaces:
Instrumented, PType

public abstract class DelegatingType
extends Persistent
implements PType


Constructor Summary
DelegatingType(PType delegate)
           
 
Method Summary
 int distanceFrom(PType type)
           
 java.util.List<PField> getAllFields()
           
 java.util.List<PMethod> getAllMethods()
           
 PMethod getConstructor(java.util.List<PType> name)
           
protected  PType getDelegate()
           
 java.lang.String getDescriptor()
           
 PField getField(java.lang.String name)
           
 Expression getInitialValue(ExpressionContainer container)
           
 PMethod getMethod(java.lang.String name, java.util.List<PType> params)
           
 java.lang.String getName()
           
 PType getSuperClass()
           
 org.objectweb.asm.Type getType()
           
 boolean isAssignableFrom(PType type)
           
 boolean isInterface()
           
 void visitConvertFromObject(org.objectweb.asm.MethodVisitor mv)
           
 void visitConvertToObject(org.objectweb.asm.MethodVisitor mv)
           
 
Methods inherited from class org.siebengeisslein.client.Persistent
abort, clearUserLocals, clone, commit, disposeTransient, getGroup, getRef, getTransientValue, hashCode, initTransient, isWriteTransaction, joinWriteTransaction, readLock, setGroup, setTransientValue, toPersistent, toRef, writeExternal, writeLock
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.siebengeisslein.pclass.PType
getImplementedTypes, getSort, getTypeManager, isAbstract
 

Constructor Detail

DelegatingType

public DelegatingType(PType delegate)
Method Detail

getDelegate

protected PType getDelegate()

distanceFrom

public int distanceFrom(PType type)
Specified by:
distanceFrom in interface PType

getAllFields

public java.util.List<PField> getAllFields()
Specified by:
getAllFields in interface PType

getName

public java.lang.String getName()
Specified by:
getName in interface PType

getAllMethods

public java.util.List<PMethod> getAllMethods()
Specified by:
getAllMethods in interface PType

getDescriptor

public java.lang.String getDescriptor()
Specified by:
getDescriptor in interface PType

getField

public PField getField(java.lang.String name)
Specified by:
getField in interface PType
Returns:
field or null if this type does not have a field with name 'name'

getInitialValue

public Expression getInitialValue(ExpressionContainer container)
Specified by:
getInitialValue in interface PType

getMethod

public PMethod getMethod(java.lang.String name,
                         java.util.List<PType> params)
Specified by:
getMethod in interface PType

getSuperClass

public PType getSuperClass()
Specified by:
getSuperClass in interface PType
Returns:
superclass or null if this type does not have a superclass (object/basic/void types).

getType

public org.objectweb.asm.Type getType()
Specified by:
getType in interface PType

isAssignableFrom

public boolean isAssignableFrom(PType type)
Specified by:
isAssignableFrom in interface PType

isInterface

public boolean isInterface()
Specified by:
isInterface in interface PType

visitConvertFromObject

public void visitConvertFromObject(org.objectweb.asm.MethodVisitor mv)
Specified by:
visitConvertFromObject in interface PType

visitConvertToObject

public void visitConvertToObject(org.objectweb.asm.MethodVisitor mv)
Specified by:
visitConvertToObject in interface PType

getConstructor

public PMethod getConstructor(java.util.List<PType> name)
Specified by:
getConstructor in interface PType