本文整理汇总了Java中org.jf.dexlib2.iface.instruction.formats.Instruction21c.getReference方法的典型用法代码示例。如果您正苦于以下问题:Java Instruction21c.getReference方法的具体用法?Java Instruction21c.getReference怎么用?Java Instruction21c.getReference使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.jf.dexlib2.iface.instruction.formats.Instruction21c
的用法示例。
在下文中一共展示了Instruction21c.getReference方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: of
import org.jf.dexlib2.iface.instruction.formats.Instruction21c; //导入方法依赖的package包/类
public static ImmutableInstruction21c of(Instruction21c instruction) {
if (instruction instanceof ImmutableInstruction21c) {
return (ImmutableInstruction21c)instruction;
}
return new ImmutableInstruction21c(
instruction.getOpcode(),
instruction.getRegisterA(),
instruction.getReference());
}
示例2: of
import org.jf.dexlib2.iface.instruction.formats.Instruction21c; //导入方法依赖的package包/类
public static ImmutableInstruction21c of(Instruction21c instruction) {
if (instruction instanceof ImmutableInstruction21c) {
return (ImmutableInstruction21c) instruction;
}
return new ImmutableInstruction21c(
instruction.getOpcode(),
instruction.getRegisterA(),
instruction.getReference());
}
示例3: newBuilderInstruction21c
import org.jf.dexlib2.iface.instruction.formats.Instruction21c; //导入方法依赖的package包/类
@Nonnull
private BuilderInstruction21c newBuilderInstruction21c(@Nonnull Instruction21c instruction) {
return new BuilderInstruction21c(
instruction.getOpcode(),
instruction.getRegisterA(),
instruction.getReference());
}
示例4: findFieldsSetInStaticConstructor
import org.jf.dexlib2.iface.instruction.formats.Instruction21c; //导入方法依赖的package包/类
@Nonnull
private HashSet<String> findFieldsSetInStaticConstructor() {
HashSet<String> fieldsSetInStaticConstructor = new HashSet<String>();
for (Method method: classDef.getDirectMethods()) {
if (method.getName().equals("<clinit>")) {
MethodImplementation impl = method.getImplementation();
if (impl != null) {
for (Instruction instruction: impl.getInstructions()) {
switch (instruction.getOpcode()) {
case SPUT:
case SPUT_BOOLEAN:
case SPUT_BYTE:
case SPUT_CHAR:
case SPUT_OBJECT:
case SPUT_SHORT:
case SPUT_WIDE: {
Instruction21c ins = (Instruction21c)instruction;
FieldReference fieldRef = null;
try {
fieldRef = (FieldReference)ins.getReference();
} catch (InvalidItemIndex ex) {
// just ignore it for now. We'll deal with it later, when processing the instructions
// themselves
}
if (fieldRef != null &&
fieldRef.getDefiningClass().equals((classDef.getType()))) {
fieldsSetInStaticConstructor.add(ReferenceUtil.getShortFieldDescriptor(fieldRef));
}
break;
}
}
}
}
}
}
return fieldsSetInStaticConstructor;
}