abc.aspectj.types
Class InterTypeFieldInstance_c

java.lang.Object
  extended by FieldInstance_c
      extended by abc.aspectj.types.InterTypeFieldInstance_c
All Implemented Interfaces:
InterTypeFieldInstance, InterTypeMemberInstance

public class InterTypeFieldInstance_c
extends FieldInstance_c
implements InterTypeMemberInstance, InterTypeFieldInstance

Author:
Oege de Moor a FieldInstance that was introduced via an intertype declaration, recording its origin

Field Summary
protected  MethodInstance getInstance
           
protected  java.lang.String identifier
           
protected  FieldInstance mangled
           
protected  ClassType origin
           
protected  MethodInstance setInstance
           
 
Constructor Summary
InterTypeFieldInstance_c(TypeSystem ts, Position pos, java.lang.String identifier, ClassType origin, ReferenceType container, Flags flags, Type type, java.lang.String name)
           
 
Method Summary
 Expr getCall(AJNodeFactory nf, AJTypeSystem ts, Receiver target, ReferenceType container)
           
 MethodInstance getGet()
           
 java.lang.String getIdentifier()
           
 MethodInstance getSet()
           
 FieldInstance mangled()
           
 Flags origFlags()
           
 ClassType origin()
          the defining aspect of this instance
 Expr setCall(AJNodeFactory nf, AJTypeSystem ts, Receiver target, ReferenceType container, Expr arg)
           
 void setMangle()
          set the mangled instance
 void setMangleNameComponent()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

origin

protected ClassType origin

mangled

protected FieldInstance mangled

getInstance

protected MethodInstance getInstance

setInstance

protected MethodInstance setInstance

identifier

protected java.lang.String identifier
Constructor Detail

InterTypeFieldInstance_c

public InterTypeFieldInstance_c(TypeSystem ts,
                                Position pos,
                                java.lang.String identifier,
                                ClassType origin,
                                ReferenceType container,
                                Flags flags,
                                Type type,
                                java.lang.String name)
Method Detail

getIdentifier

public java.lang.String getIdentifier()
Specified by:
getIdentifier in interface InterTypeFieldInstance

origin

public ClassType origin()
Description copied from interface: InterTypeMemberInstance
the defining aspect of this instance

Specified by:
origin in interface InterTypeFieldInstance
Specified by:
origin in interface InterTypeMemberInstance

setMangle

public void setMangle()
Description copied from interface: InterTypeMemberInstance
set the mangled instance

Specified by:
setMangle in interface InterTypeFieldInstance
Specified by:
setMangle in interface InterTypeMemberInstance

setMangleNameComponent

public void setMangleNameComponent()
Specified by:
setMangleNameComponent in interface InterTypeFieldInstance
Specified by:
setMangleNameComponent in interface InterTypeMemberInstance

mangled

public FieldInstance mangled()
Specified by:
mangled in interface InterTypeFieldInstance

getGet

public MethodInstance getGet()
Specified by:
getGet in interface InterTypeFieldInstance

getSet

public MethodInstance getSet()
Specified by:
getSet in interface InterTypeFieldInstance

origFlags

public Flags origFlags()
Specified by:
origFlags in interface InterTypeFieldInstance
Specified by:
origFlags in interface InterTypeMemberInstance

getCall

public Expr getCall(AJNodeFactory nf,
                    AJTypeSystem ts,
                    Receiver target,
                    ReferenceType container)
Specified by:
getCall in interface InterTypeFieldInstance

setCall

public Expr setCall(AJNodeFactory nf,
                    AJTypeSystem ts,
                    Receiver target,
                    ReferenceType container,
                    Expr arg)
Specified by:
setCall in interface InterTypeFieldInstance