クラス CodeEmitter
java.lang.ObjectSE
org.springframework.asm.MethodVisitor
org.springframework.cglib.core.LocalVariablesSorter
org.springframework.cglib.core.CodeEmitter
- 作成者:
- Juozas Baliuka, Chris Nokleberg
フィールドサマリー
修飾子と型フィールド説明static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
クラス org.springframework.cglib.core.LocalVariablesSorter から継承されたフィールド
firstLocal
クラス org.springframework.asm.MethodVisitor から継承されたフィールド
api, mv
コンストラクターのサマリー
メソッドのサマリー
修飾子と型メソッド説明void
aaload()
void
aaload
(int index) void
aastore()
void
void
array_load
(Type type) void
array_store
(Type type) void
void
athrow()
void
引数がプリミティブクラスの場合、スタックの一番上にあるプリミティブ値をラップされた (オブジェクト) 同等のものに置き換えます。void
cast_numeric
(Type from, Type to) あるプリミティブ数値型から別の数値型へのキャストvoid
catch_exception
(Block block, Type exception) void
void
void
現在のメソッドへの引数を Object[] 配列に割り当てて埋めます。void
dup()
void
dup_x1()
void
dup_x2()
void
dup2()
void
dup2_x1()
void
dup2_x2()
void
void
void
void
void
void
void
void
void
void
void
void
instance_of
(Type type) void
void
invoke
(MethodInfo method) void
invoke
(MethodInfo method, Type virtualType) void
invoke_constructor
(Type type) void
invoke_constructor
(Type type, Signature sig) void
void
void
invoke_interface
(Type owner, Signature sig) void
invoke_static
(Type owner, Signature sig) 使用すべきではありません。void
invoke_static
(Type owner, Signature sig, boolean isInterface) void
void
invoke_virtual
(Type owner, Signature sig) void
boolean
void
load_arg
(int index) 現在のメソッドの指定された引数をスタックにプッシュします。void
現在のメソッドのすべての引数をスタックにプッシュします。void
load_args
(int fromArg, int count) void
load_local
(Local local) void
make_local
(Type type) void
void
void
void
void
new_instance
(Type type) void
void
newarray()
void
void
not()
スタックの一番上の整数を 1 から 0 に、またはその逆に切り替えますvoid
pop()
void
pop2()
void
process_switch
(int[] keys, ProcessSwitchCallback callback) void
process_switch
(int[] keys, ProcessSwitchCallback callback, boolean useTable) void
push
(boolean value) void
push
(double value) void
push
(float value) void
push
(int i) void
push
(long value) void
void
void
void
void
void
store_local
(Local local) void
super_getfield
(StringSE name, Type type) void
super_getstatic
(StringSE name, Type type) void
void
super_invoke
(Signature sig) void
void
void
super_putfield
(StringSE name, Type type) void
super_putstatic
(StringSE name, Type type) void
swap()
void
void
throw_exception
(Type type, StringSE msg) void
引数がプリミティブクラスの場合、スタックの一番上にあるオブジェクトをラップされていない (プリミティブな) 同等のものに置き換えます。void
unbox_or_zero
(Type type) スタックの一番上にあるオブジェクトをアンボックスします。void
visitMaxs
(int maxStack, int maxLocals) メソッドの最大スタックサイズとローカル変数の最大数にアクセスします。void
zero_or_null
(Type type) 引数がプリミティブクラスの場合はゼロをスタックにプッシュし、それ以外の場合は null をプッシュします。クラス org.springframework.cglib.core.LocalVariablesSorter から継承されたメソッド
newLocal, visitIincInsn, visitLocalVariable, visitVarInsn
クラス org.springframework.asm.MethodVisitor から継承されたメソッド
getDelegate, visitAnnotableParameterCount, visitAnnotation, visitAnnotationDefault, visitAttribute, visitCode, visitEnd, visitFieldInsn, visitFrame, visitInsn, visitInsnAnnotation, visitIntInsn, visitInvokeDynamicInsn, visitJumpInsn, visitLabel, visitLdcInsn, visitLineNumber, visitLocalVariableAnnotation, visitLookupSwitchInsn, visitMethodInsn, visitMethodInsn, visitMultiANewArrayInsn, visitParameter, visitParameterAnnotation, visitTableSwitchInsn, visitTryCatchAnnotation, visitTryCatchBlock, visitTypeAnnotation, visitTypeInsn
フィールドの詳細
ADD
public static final int ADD- 関連事項:
MUL
public static final int MUL- 関連事項:
XOR
public static final int XOR- 関連事項:
USHR
public static final int USHR- 関連事項:
SUB
public static final int SUB- 関連事項:
DIV
public static final int DIV- 関連事項:
NEG
public static final int NEG- 関連事項:
REM
public static final int REM- 関連事項:
AND
public static final int AND- 関連事項:
OR
public static final int OR- 関連事項:
GT
public static final int GT- 関連事項:
LT
public static final int LT- 関連事項:
GE
public static final int GE- 関連事項:
LE
public static final int LE- 関連事項:
NE
public static final int NE- 関連事項:
EQ
public static final int EQ- 関連事項:
コンストラクターの詳細
CodeEmitter
メソッドの詳細
isStaticHook
public boolean isStaticHook()getSignature
getReturnType
getMethodInfo
getClassEmitter
end_method
public void end_method()begin_block
catch_exception
goTo
ifnull
ifnonnull
if_jump
if_icmp
if_cmp
pop
public void pop()pop2
public void pop2()dup
public void dup()dup2
public void dup2()dup_x1
public void dup_x1()dup_x2
public void dup_x2()dup2_x1
public void dup2_x1()dup2_x2
public void dup2_x2()swap
public void swap()aconst_null
public void aconst_null()swap
monitorenter
public void monitorenter()monitorexit
public void monitorexit()math
array_load
array_store
cast_numeric
あるプリミティブ数値型から別の数値型へのキャストpush
public void push(int i) push
public void push(long value) push
public void push(float value) push
public void push(double value) push
newarray
public void newarray()newarray
arraylength
public void arraylength()load_this
public void load_this()load_args
public void load_args()現在のメソッドのすべての引数をスタックにプッシュします。load_arg
public void load_arg(int index) 現在のメソッドの指定された引数をスタックにプッシュします。- パラメーター:
index
- 引数リストへのゼロから始まるインデックス
load_args
public void load_args(int fromArg, int count) iinc
store_local
load_local
return_value
public void return_value()getfield
putfield
super_getfield
super_putfield
super_getstatic
super_putstatic
getfield
putfield
getstatic
putstatic
super_invoke
public void super_invoke()super_invoke
invoke_constructor
super_invoke_constructor
public void super_invoke_constructor()invoke_constructor_this
public void invoke_constructor_this()invoke_interface
invoke_virtual
invoke_static
使用すべきではありません。invoke_static
invoke_virtual_this
invoke_static_this
invoke_constructor
invoke_constructor_this
super_invoke_constructor
new_instance_this
public void new_instance_this()new_instance
aaload
public void aaload(int index) aaload
public void aaload()aastore
public void aastore()athrow
public void athrow()make_label
make_local
make_local
checkcast_this
public void checkcast_this()checkcast
instance_of
instance_of_this
public void instance_of_this()process_switch
process_switch
mark
push
public void push(boolean value) not
public void not()スタックの一番上の整数を 1 から 0 に、またはその逆に切り替えますthrow_exception
box
引数がプリミティブクラスの場合、スタックの一番上にあるプリミティブ値をラップされた (オブジェクト) 同等のものに置き換えます。例: char -> 文字。クラスが Void の場合、代わりに null がスタックにプッシュされます。- パラメーター:
type
- トップスタック値の現在の型を示すクラス
unbox
引数がプリミティブクラスの場合、スタックの一番上にあるオブジェクトをラップされていない (プリミティブな) 同等のものに置き換えます。例: 文字 -> 文字。- パラメーター:
type
- トップスタック値の目的の型を示すクラス
create_arg_array
public void create_arg_array()現在のメソッドへの引数を Object[] 配列に割り当てて埋めます。プリミティブ値は、ボックス化された (オブジェクト) 同等物として挿入されます。zero_or_null
引数がプリミティブクラスの場合はゼロをスタックにプッシュし、それ以外の場合は null をプッシュします。unbox_or_zero
スタックの一番上にあるオブジェクトをアンボックスします。オブジェクトが null の場合、ボックス化されていないプリミティブ値はゼロになります。visitMaxs
public void visitMaxs(int maxStack, int maxLocals) クラスからコピーされた説明:MethodVisitor
メソッドの最大スタックサイズとローカル変数の最大数にアクセスします。- オーバーライド:
- クラス
LocalVariablesSorter
のvisitMaxs
- パラメーター:
maxStack
- メソッドの最大スタックサイズ。maxLocals
- メソッドのローカル変数の最大数。
invoke
invoke