Class GenericTransform
java.lang.Object
net.covers1624.coffeegrinder.bytecode.InsnVisitor<None,GenericTransform.ReturnTypeInfo>
net.covers1624.coffeegrinder.bytecode.SimpleInsnVisitor<GenericTransform.ReturnTypeInfo>
net.covers1624.coffeegrinder.bytecode.transform.transformers.generics.GenericTransform
- All Implemented Interfaces:
ClassTransformer,Transformer
public class GenericTransform
extends SimpleInsnVisitor<GenericTransform.ReturnTypeInfo>
implements ClassTransformer
Created by covers1624 on 2/4/22.
-
Nested Class Summary
Nested Classes -
Field Summary
Fields inherited from class net.covers1624.coffeegrinder.bytecode.SimpleInsnVisitor
NONE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic ATypegetVariableGenericType(LocalVariable variable, TypeResolver typeResolver) static booleanisRepresentable(Instruction scope, AType type) voidtransform(ClassDecl cInsn, ClassTransformContext ctx) static booleantypeParameterInScope(Instruction insn, TypeParameter param) visitArrayLen(ArrayLen arrayLen, GenericTransform.ReturnTypeInfo ret) visitBinary(Binary binary, GenericTransform.ReturnTypeInfo ret) visitCheckCast(Cast cast, GenericTransform.ReturnTypeInfo ret) visitClassDecl(ClassDecl classDecl, GenericTransform.ReturnTypeInfo ret) visitComparison(Comparison comparison, GenericTransform.ReturnTypeInfo ret) visitFieldDecl(FieldDecl fieldDecl, GenericTransform.ReturnTypeInfo ret) visitFieldReference(FieldReference fieldRef, GenericTransform.ReturnTypeInfo ret) visitForEachLoop(ForEachLoop forEachLoop, GenericTransform.ReturnTypeInfo ret) visitInstanceOf(InstanceOf instanceOf, GenericTransform.ReturnTypeInfo ret) visitInvoke(Invoke invoke, GenericTransform.ReturnTypeInfo ret) voidvisitLambda(MethodDecl lambda, ReferenceType fInterfaceType) visitLoad(Load load, GenericTransform.ReturnTypeInfo ret) visitLocalVariable(LocalVariable localVariable, GenericTransform.ReturnTypeInfo ret) visitMethodDecl(MethodDecl methodDecl, GenericTransform.ReturnTypeInfo ret) visitMethodReference(MethodReference methodReference, GenericTransform.ReturnTypeInfo ret) visitNew(New newInsn, GenericTransform.ReturnTypeInfo ret) visitNewArray(NewArray newArray, GenericTransform.ReturnTypeInfo ret) visitPostIncrement(PostIncrement postIncrement, GenericTransform.ReturnTypeInfo ret) visitReturn(Return ret, GenericTransform.ReturnTypeInfo info) visitStore(Store store, GenericTransform.ReturnTypeInfo ret) visitTernary(Ternary ternary, GenericTransform.ReturnTypeInfo ret) voidwrapWithUncheckedCast(Instruction arg, AType toType) voidwrapWithUncheckedCast(Instruction arg, ReferenceType toType) Methods inherited from class net.covers1624.coffeegrinder.bytecode.SimpleInsnVisitor
visitDefaultMethods inherited from class net.covers1624.coffeegrinder.bytecode.InsnVisitor
visitAssert, visitBlock, visitBlockContainer, visitBranch, visitCompare, visitContinue, visitDeadCode, visitDoWhileLoop, visitForLoop, visitIfInstruction, visitInvokeDynamic, visitLdcBoolean, visitLdcChar, visitLdcClass, visitLdcNull, visitLdcNumber, visitLdcString, visitLeave, visitLoadThis, visitLocalReference, visitLogicAnd, visitLogicNot, visitLogicOr, visitMonitorEnter, visitMonitorExit, visitNewObject, visitNop, visitSwitch, visitSwitchSection, visitSwitchTable, visitSynchronized, visitThrow, visitTryCatch, visitTryCatchHandler, visitTryFinally, visitTryWithResources, visitWhileLoop, visitYieldMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.covers1624.coffeegrinder.bytecode.transform.Transformer
getName, stepType
-
Constructor Details
-
GenericTransform
public GenericTransform()
-
-
Method Details
-
transform
- Specified by:
transformin interfaceClassTransformer
-
visitClassDecl
- Overrides:
visitClassDeclin classInsnVisitor<None,GenericTransform.ReturnTypeInfo>
-
visitComparison
- Overrides:
visitComparisonin classInsnVisitor<None,GenericTransform.ReturnTypeInfo>
-
visitCompoundAssignment
- Overrides:
visitCompoundAssignmentin classInsnVisitor<None,GenericTransform.ReturnTypeInfo>
-
visitMethodDecl
- Overrides:
visitMethodDeclin classInsnVisitor<None,GenericTransform.ReturnTypeInfo>
-
visitLambda
-
visitFieldDecl
- Overrides:
visitFieldDeclin classInsnVisitor<None,GenericTransform.ReturnTypeInfo>
-
visitCheckCast
- Overrides:
visitCheckCastin classInsnVisitor<None,GenericTransform.ReturnTypeInfo>
-
visitLoad
- Overrides:
visitLoadin classInsnVisitor<None,GenericTransform.ReturnTypeInfo>
-
visitLocalVariable
- Overrides:
visitLocalVariablein classInsnVisitor<None,GenericTransform.ReturnTypeInfo>
-
visitPostIncrement
- Overrides:
visitPostIncrementin classInsnVisitor<None,GenericTransform.ReturnTypeInfo>
-
visitInstanceOf
- Overrides:
visitInstanceOfin classInsnVisitor<None,GenericTransform.ReturnTypeInfo>
-
visitInvoke
- Overrides:
visitInvokein classInsnVisitor<None,GenericTransform.ReturnTypeInfo>
-
visitNew
- Overrides:
visitNewin classInsnVisitor<None,GenericTransform.ReturnTypeInfo>
-
visitNewArray
- Overrides:
visitNewArrayin classInsnVisitor<None,GenericTransform.ReturnTypeInfo>
-
visitFieldReference
- Overrides:
visitFieldReferencein classInsnVisitor<None,GenericTransform.ReturnTypeInfo>
-
visitArrayElementReference
public None visitArrayElementReference(ArrayElementReference elemRef, GenericTransform.ReturnTypeInfo ret) - Overrides:
visitArrayElementReferencein classInsnVisitor<None,GenericTransform.ReturnTypeInfo>
-
visitArrayLen
- Overrides:
visitArrayLenin classInsnVisitor<None,GenericTransform.ReturnTypeInfo>
-
visitBinary
- Overrides:
visitBinaryin classInsnVisitor<None,GenericTransform.ReturnTypeInfo>
-
visitForEachLoop
- Overrides:
visitForEachLoopin classInsnVisitor<None,GenericTransform.ReturnTypeInfo>
-
visitStore
- Overrides:
visitStorein classInsnVisitor<None,GenericTransform.ReturnTypeInfo>
-
visitTernary
- Overrides:
visitTernaryin classInsnVisitor<None,GenericTransform.ReturnTypeInfo>
-
visitReturn
- Overrides:
visitReturnin classInsnVisitor<None,GenericTransform.ReturnTypeInfo>
-
visitMethodReference
public None visitMethodReference(MethodReference methodReference, GenericTransform.ReturnTypeInfo ret) - Overrides:
visitMethodReferencein classInsnVisitor<None,GenericTransform.ReturnTypeInfo>
-
wrapWithUncheckedCast
-
wrapWithUncheckedCast
-
isRepresentable
-
typeParameterInScope
-
getVariableGenericType
-