Class DataClaySwitchByImplementationID
- java.lang.Object
-
- es.bsc.dataclay.logic.classmgr.bytecode.java.switches.DataClaySwitchByImplementationID
-
- Direct Known Subclasses:
RunTableSwitchGenerator,SetWrapperParametersAndReturnSwitchGenerator,WrapParametersAndReturnTableSwitchGenerator
public abstract class DataClaySwitchByImplementationID extends Object
Run table switch generator.
-
-
Field Summary
Fields Modifier and Type Field Description protected org.objectweb.asm.commons.GeneratorAdaptergnMethod generator.protected org.objectweb.asm.commons.InstructionAdapteriaInstruction adapter.protected booleanisExecClassIndicates if it is an execution class.protected MetaClassmetaClassInformation of class.protected StubInfostubInfoStub information for stubs.
-
Constructor Summary
Constructors Constructor Description DataClaySwitchByImplementationID(MetaClass themetaClass, StubInfo thestubInfo, boolean theisExecClass, org.objectweb.asm.commons.GeneratorAdapter thegn, org.objectweb.asm.commons.InstructionAdapter theia)Constructor
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract voidgenerateCallToParentCase()Generate code for calling to parent for each case.protected abstract voidgenerateCase(Implementation impl)Generate code for each case.voidgenerateCode(boolean ignoreConstructors)Generate switch case by Implementation ID code (IMPLID is parameter 0)
-
-
-
Field Detail
-
metaClass
protected final MetaClass metaClass
Information of class.
-
stubInfo
protected final StubInfo stubInfo
Stub information for stubs.
-
isExecClass
protected final boolean isExecClass
Indicates if it is an execution class.
-
gn
protected final org.objectweb.asm.commons.GeneratorAdapter gn
Method generator.
-
ia
protected final org.objectweb.asm.commons.InstructionAdapter ia
Instruction adapter.
-
-
Constructor Detail
-
DataClaySwitchByImplementationID
public DataClaySwitchByImplementationID(MetaClass themetaClass, StubInfo thestubInfo, boolean theisExecClass, org.objectweb.asm.commons.GeneratorAdapter thegn, org.objectweb.asm.commons.InstructionAdapter theia)
Constructor- Parameters:
themetaClass- Information of class.thestubInfo- Stub infotheisExecClass- isExec classthegn- Method generator.theia- Instruction adapter
-
-
Method Detail
-
generateCase
protected abstract void generateCase(Implementation impl)
Generate code for each case.- Parameters:
impl- Implementation of case
-
generateCallToParentCase
protected abstract void generateCallToParentCase()
Generate code for calling to parent for each case.
-
generateCode
public final void generateCode(boolean ignoreConstructors)
Generate switch case by Implementation ID code (IMPLID is parameter 0)- Parameters:
ignoreConstructors- Indicates if constructors must be ignored.
-
-