public abstract class PanacheEntityClassVisitor<EntityFieldType extends EntityField>
extends org.objectweb.asm.ClassVisitor
| Modifier and Type | Field and Description |
|---|---|
protected Function<String,String> |
argMapper |
protected org.jboss.jandex.ClassInfo |
entityInfo |
protected ByteCodeType |
entityUpperBound |
protected Map<String,? extends EntityFieldType> |
fields |
protected List<PanacheMethodCustomizer> |
methodCustomizers |
protected org.jboss.jandex.ClassInfo |
panacheEntityBaseClassInfo |
protected org.objectweb.asm.Type |
thisClass |
protected Map<String,ByteCodeType> |
typeArguments |
protected TypeBundle |
typeBundle |
| Constructor and Description |
|---|
PanacheEntityClassVisitor(org.objectweb.asm.ClassVisitor outputClassVisitor,
MetamodelInfo<? extends EntityModel<? extends EntityFieldType>> modelInfo,
TypeBundle typeBundle,
org.jboss.jandex.ClassInfo entityInfo,
List<PanacheMethodCustomizer> methodCustomizers,
org.jboss.jandex.IndexView indexView) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
discoverTypeParameters(org.jboss.jandex.ClassInfo classInfo,
org.jboss.jandex.IndexView indexView,
TypeBundle types,
ByteCodeType baseType) |
protected abstract void |
generateAccessorGetField(org.objectweb.asm.MethodVisitor mv,
EntityField field) |
protected void |
generateAccessors() |
protected abstract void |
generateAccessorSetField(org.objectweb.asm.MethodVisitor mv,
EntityField field) |
protected void |
generateMethod(org.jboss.jandex.MethodInfo method,
org.jboss.jandex.AnnotationValue targetReturnTypeErased) |
protected void |
injectModel(org.objectweb.asm.MethodVisitor mv) |
void |
visitEnd() |
org.objectweb.asm.FieldVisitor |
visitField(int access,
String name,
String descriptor,
String signature,
Object value) |
org.objectweb.asm.MethodVisitor |
visitMethod(int access,
String methodName,
String descriptor,
String signature,
String[] exceptions) |
protected org.objectweb.asm.Type thisClass
protected final Map<String,? extends EntityFieldType extends EntityField> fields
protected TypeBundle typeBundle
protected final org.jboss.jandex.ClassInfo panacheEntityBaseClassInfo
protected org.jboss.jandex.ClassInfo entityInfo
protected List<PanacheMethodCustomizer> methodCustomizers
protected final Map<String,ByteCodeType> typeArguments
protected final ByteCodeType entityUpperBound
public PanacheEntityClassVisitor(org.objectweb.asm.ClassVisitor outputClassVisitor,
MetamodelInfo<? extends EntityModel<? extends EntityFieldType>> modelInfo,
TypeBundle typeBundle,
org.jboss.jandex.ClassInfo entityInfo,
List<PanacheMethodCustomizer> methodCustomizers,
org.jboss.jandex.IndexView indexView)
public org.objectweb.asm.FieldVisitor visitField(int access,
String name,
String descriptor,
String signature,
Object value)
visitField in class org.objectweb.asm.ClassVisitorpublic org.objectweb.asm.MethodVisitor visitMethod(int access,
String methodName,
String descriptor,
String signature,
String[] exceptions)
visitMethod in class org.objectweb.asm.ClassVisitorpublic void visitEnd()
visitEnd in class org.objectweb.asm.ClassVisitorprotected void discoverTypeParameters(org.jboss.jandex.ClassInfo classInfo,
org.jboss.jandex.IndexView indexView,
TypeBundle types,
ByteCodeType baseType)
protected void generateMethod(org.jboss.jandex.MethodInfo method,
org.jboss.jandex.AnnotationValue targetReturnTypeErased)
protected void injectModel(org.objectweb.asm.MethodVisitor mv)
protected void generateAccessors()
protected abstract void generateAccessorSetField(org.objectweb.asm.MethodVisitor mv,
EntityField field)
protected abstract void generateAccessorGetField(org.objectweb.asm.MethodVisitor mv,
EntityField field)
Copyright © 2021 JBoss by Red Hat. All rights reserved.