本文整理了Java中org.objectweb.asm.tree.FieldInsnNode.<init>()
方法的一些代码示例,展示了FieldInsnNode.<init>()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。FieldInsnNode.<init>()
方法的具体详情如下:
包路径:org.objectweb.asm.tree.FieldInsnNode
类名称:FieldInsnNode
方法名:<init>
[英]Constructs a new FieldInsnNode.
[中]构造一个新的FieldInsnNode。
代码示例来源:origin: jphp-group/jphp
public void writePushBooleanAsMemory(boolean value) {
if (value)
code.add(new FieldInsnNode(
GETSTATIC, Type.getInternalName(Memory.class), "TRUE", Type.getDescriptor(Memory.class)
));
else
code.add(new FieldInsnNode(
GETSTATIC, Type.getInternalName(Memory.class), "FALSE", Type.getDescriptor(Memory.class)
));
stackPush(Memory.Type.REFERENCE);
}
代码示例来源:origin: jphp-group/jphp
public void writePutStatic(Class clazz, String name, Class fieldClass) {
code.add(new FieldInsnNode(PUTSTATIC, Type.getInternalName(clazz), name, Type.getDescriptor(fieldClass)));
stackPop();
}
代码示例来源:origin: jphp-group/jphp
public void writePutDynamic(String name, Class fieldClass) {
code.add(new FieldInsnNode(
PUTFIELD,
method.clazz.node.name,
name,
Type.getDescriptor(fieldClass)
));
stackPop();
}
代码示例来源:origin: jphp-group/jphp
public void writePutStatic(String name, Class fieldClass) {
code.add(new FieldInsnNode(
PUTSTATIC,
method.clazz.node.name,
name,
Type.getDescriptor(fieldClass)
));
stackPop();
}
代码示例来源:origin: jphp-group/jphp
public void writeGetStatic(Class clazz, String name, Class fieldClass) {
code.add(new FieldInsnNode(GETSTATIC, Type.getInternalName(clazz), name, Type.getDescriptor(fieldClass)));
stackPush(null, StackItem.Type.valueOf(fieldClass));
setStackPeekAsImmutable();
}
代码示例来源:origin: jphp-group/jphp
public void writeGetStatic(String name, Class fieldClass) {
code.add(new FieldInsnNode(
GETSTATIC,
method.clazz.node.name,
name,
Type.getDescriptor(fieldClass)
));
stackPush(null, StackItem.Type.valueOf(fieldClass));
setStackPeekAsImmutable();
}
代码示例来源:origin: jphp-group/jphp
public void writeGetDynamic(String name, Class fieldClass) {
stackPop();
code.add(new FieldInsnNode(
GETFIELD,
method.clazz.node.name,
name,
Type.getDescriptor(fieldClass)
));
stackPush(null, StackItem.Type.valueOf(fieldClass));
setStackPeekAsImmutable();
}
代码示例来源:origin: jphp-group/jphp
code.add(new FieldInsnNode(
GETSTATIC, Type.getInternalName(Memory.class), "UNDEFINED", Type.getDescriptor(Memory.class)
));
} else if (memory instanceof NullMemory) {
code.add(new FieldInsnNode(
GETSTATIC, Type.getInternalName(Memory.class), "NULL", Type.getDescriptor(Memory.class)
));
代码示例来源:origin: apache/asterixdb
@Override
public void visitFieldInsn(int opcode, String owner, String name, String desc) {
mv.visitFieldInsn(opcode, owner, name, desc);
fieldAccessNode = new FieldInsnNode(opcode, owner, name, desc);
instructionsAfterFieldAccess.clear();
}
代码示例来源:origin: mjanicek/rembulan
public static AbstractInsnNode loadBoxedBoolean(boolean value) {
return new FieldInsnNode(
GETSTATIC,
Type.getInternalName(Boolean.class),
value ? "TRUE" : "FALSE",
Type.getDescriptor(Boolean.class));
}
代码示例来源:origin: org.ow2.asm/asm-tree
@Override
public AbstractInsnNode clone(final Map<LabelNode, LabelNode> clonedLabels) {
return new FieldInsnNode(opcode, owner, name, desc).cloneAnnotations(this);
}
}
代码示例来源:origin: net.sourceforge.cobertura/cobertura
@Override
public void visitFieldInsn(int arg0, String arg1, String arg2, String arg3) {
super.visitFieldInsn(arg0, arg1, arg2, arg3);
appendToBacklog(new FieldInsnNode(arg0, arg1, arg2, arg3));
}
代码示例来源:origin: org.ow2.asm/asm-debug-all
@Override
public AbstractInsnNode clone(final Map<LabelNode, LabelNode> labels) {
return new FieldInsnNode(opcode, owner, name, desc)
.cloneAnnotations(this);
}
}
代码示例来源:origin: org.ow2.asm/asm-tree
@Override
public void visitFieldInsn(
final int opcode, final String owner, final String name, final String descriptor) {
instructions.add(new FieldInsnNode(opcode, owner, name, descriptor));
}
代码示例来源:origin: fge/grappa
public CodeBlock putfield(final String className, final String fieldName,
final String fieldDesc)
{
instructionList.add(new FieldInsnNode(PUTFIELD, className, fieldName,
fieldDesc));
return this;
}
代码示例来源:origin: org.ow2.asm/asm-debug-all
@Override
public void visitFieldInsn(final int opcode, final String owner,
final String name, final String desc) {
instructions.add(new FieldInsnNode(opcode, owner, name, desc));
}
代码示例来源:origin: mjanicek/rembulan
public InsnList instantiateInsns() {
InsnList il = new InsnList();
doInstantiate(il);
il.add(new FieldInsnNode(
PUTSTATIC,
ownerClassType.getInternalName(),
fieldName,
fieldType.getDescriptor()));
return il;
}
代码示例来源:origin: com.github.bingoohuang/blackcat-instrument
public static InsnList getClassRefInst(Type type, int majorVersion) {
char charType = type.getDescriptor().charAt(0);
if (charType == '[' || charType == 'L')
return getClassConstantRef(type, majorVersion);
String wrapper = getWrapper(type, charType);
InsnList list = new InsnList();
list.add(new FieldInsnNode(GETSTATIC, wrapper, "TYPE", ci(Class.class)));
return list;
}
代码示例来源:origin: org.parboiled/parboiled-java
protected void convertXLoads(InstructionGroup group) {
String owner = group.getGroupClassType().getInternalName();
for (InstructionGraphNode node : group.getNodes()) {
if (!node.isXLoad()) continue;
VarInsnNode insn = (VarInsnNode) node.getInstruction();
FieldNode field = group.getFields().get(insn.var);
// insert the correct GETFIELD after the xLoad
group.getInstructions().insert(insn, new FieldInsnNode(GETFIELD, owner, field.name, field.desc));
// change the load to ALOAD 0
group.getInstructions().set(insn, new VarInsnNode(ALOAD, 0));
}
}
代码示例来源:origin: org.parboiled/parboiled-java
private void initializeFields() {
String internalName = group.getGroupClassType().getInternalName();
for (FieldNode field : group.getFields()) {
insert(new InsnNode(DUP));
// the FieldNodes access and value members have been reused for the var index / Type respectively!
insert(new VarInsnNode(getLoadingOpcode((Type) field.value), field.access));
insert(new FieldInsnNode(PUTFIELD, internalName, field.name, field.desc));
}
}
内容来源于网络,如有侵权,请联系作者删除!