本文整理汇总了Java中gnu.bytecode.CodeAttr.emitGetStatic方法的典型用法代码示例。如果您正苦于以下问题:Java CodeAttr.emitGetStatic方法的具体用法?Java CodeAttr.emitGetStatic怎么用?Java CodeAttr.emitGetStatic使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类gnu.bytecode.CodeAttr
的用法示例。
在下文中一共展示了CodeAttr.emitGetStatic方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: gnuByteCodeHelloWorld
import gnu.bytecode.CodeAttr; //导入方法依赖的package包/类
static byte[] gnuByteCodeHelloWorld() {
ClassType c = new ClassType("HelloWorld");
c.setSuper("java.lang.Object");
c.setModifiers(Access.PUBLIC);
c.setSourceFile("HelloWorld.java");
Method m = c.addMethod("<init>", "()V", Access.PUBLIC);
CodeAttr code = m.startCode();
code.pushScope();
code.emitPushThis();
code.emitInvokeSpecial(objectCtor);
code.emitReturn();
code.popScope();
m = c.addMethod("main", "([Ljava/lang/String;)V", Access.PUBLIC
| Access.STATIC);
code = m.startCode();
code.pushScope();
code.emitGetStatic(outField);
code.emitPushString("Hello world!");
code.emitInvokeVirtual(printlnMethod);
code.emitReturn();
code.popScope();
return c.writeToArray();
}
示例2: emitPushBoolean
import gnu.bytecode.CodeAttr; //导入方法依赖的package包/类
@Override
public void emitPushBoolean(boolean value)
{
CodeAttr code = getCode();
if (value)
code.emitGetStatic(ClassType.make("gnu.commonlisp.lang.Lisp2").getDeclaredField("TRUE"));
else
code.emitGetStatic(Compilation.scmListType.getDeclaredField("Empty"));
}
示例3: emitPushBoolean
import gnu.bytecode.CodeAttr; //导入方法依赖的package包/类
public void emitPushBoolean(boolean value, CodeAttr code)
{
if (value)
code.emitGetStatic(ClassType.make("gnu.commonlisp.lang.Lisp2").getDeclaredField("TRUE"));
else
code.emitGetStatic(Compilation.scmListType.getDeclaredField("Empty"));
}