本文整理汇总了Java中jdk.nashorn.internal.codegen.ClassEmitter.Flag类的典型用法代码示例。如果您正苦于以下问题:Java Flag类的具体用法?Java Flag怎么用?Java Flag使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
Flag类属于jdk.nashorn.internal.codegen.ClassEmitter包,在下文中一共展示了Flag类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: newAllocate
import jdk.nashorn.internal.codegen.ClassEmitter.Flag; //导入依赖的package包/类
/**
* Add an empty <init> method to the JavaScript class.
*
* @param classEmitter Open class emitter.
* @param className Name of JavaScript class.
*/
private static void newAllocate(final String className, final ClassEmitter classEmitter) {
final MethodEmitter allocate = classEmitter.method(EnumSet.of(Flag.PUBLIC, Flag.STATIC), ALLOCATE.symbolName(), ScriptObject.class, PropertyMap.class);
allocate.begin();
allocate._new(className, Type.typeFor(ScriptObject.class));
allocate.dup();
allocate.load(Type.typeFor(PropertyMap.class), 0);
allocate.invoke(constructorNoLookup(className, PropertyMap.class));
allocate._return();
allocate.end();
}
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:17,代码来源:ObjectClassGenerator.java
示例2: initCompileUnit
import jdk.nashorn.internal.codegen.ClassEmitter.Flag; //导入依赖的package包/类
private CompileUnit initCompileUnit(final String unitClassName, final long initialWeight) {
final ClassEmitter classEmitter = new ClassEmitter(env, source.getName(), unitClassName, strict);
final CompileUnit compileUnit = new CompileUnit(unitClassName, classEmitter, initialWeight);
classEmitter.begin();
final MethodEmitter initMethod = classEmitter.init(EnumSet.of(Flag.PRIVATE));
initMethod.begin();
initMethod.load(Type.OBJECT, 0);
initMethod.newInstance(jdk.nashorn.internal.scripts.JS.class);
initMethod.returnVoid();
initMethod.end();
return compileUnit;
}
开发者ID:RedlineResearch,项目名称:OLD-OpenJDK8,代码行数:16,代码来源:Compiler.java
示例3: newAllocate
import jdk.nashorn.internal.codegen.ClassEmitter.Flag; //导入依赖的package包/类
/**
* Add an empty <init> method to the JavaScript class.
*
* @param classEmitter Open class emitter.
* @param className Name of JavaScript class.
*/
private static void newAllocate(final ClassEmitter classEmitter, final String className) {
final MethodEmitter allocate = classEmitter.method(EnumSet.of(Flag.PUBLIC, Flag.STATIC), ALLOCATE.symbolName(), ScriptObject.class, PropertyMap.class);
allocate.begin();
allocate._new(className);
allocate.dup();
allocate.load(Type.typeFor(PropertyMap.class), 0);
allocate.invoke(constructorNoLookup(className, PropertyMap.class));
allocate._return();
allocate.end();
}
开发者ID:RedlineResearch,项目名称:OLD-OpenJDK8,代码行数:17,代码来源:ObjectClassGenerator.java
示例4: loadHandle
import jdk.nashorn.internal.codegen.ClassEmitter.Flag; //导入依赖的package包/类
/**
* Push a method handle to the stack
*
* @param className class name
* @param methodName method name
* @param descName descriptor
* @param flags flags that describe this handle, e.g. invokespecial new, or invoke virtual
*
* @return the method emitter
*/
MethodEmitter loadHandle(final String className, final String methodName, final String descName, final EnumSet<Flag> flags) {
final int flag = Flag.getValue(flags);
debug("load handle ");
pushType(Type.OBJECT.ldc(method, new Handle(flag, className, methodName, descName, flag == H_INVOKEINTERFACE)));
return this;
}
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:17,代码来源:MethodEmitter.java
示例5: loadHandle
import jdk.nashorn.internal.codegen.ClassEmitter.Flag; //导入依赖的package包/类
/**
* Push a method handle to the stack
*
* @param className class name
* @param methodName method name
* @param descName descriptor
* @param flags flags that describe this handle, e.g. invokespecial new, or invoke virtual
*
* @return the method emitter
*/
@SuppressWarnings("deprecation")
MethodEmitter loadHandle(final String className, final String methodName, final String descName, final EnumSet<Flag> flags) {
debug("load handle ");
pushType(Type.OBJECT.ldc(method, new Handle(Flag.getValue(flags), className, methodName, descName)));
return this;
}
开发者ID:campolake,项目名称:openjdk9,代码行数:17,代码来源:MethodEmitter.java
示例6: loadHandle
import jdk.nashorn.internal.codegen.ClassEmitter.Flag; //导入依赖的package包/类
/**
* Push a method handle to the stack
*
* @param className class name
* @param methodName method name
* @param descName descriptor
* @param flags flags that describe this handle, e.g. invokespecial new, or invoke virtual
*
* @return the method emitter
*/
MethodEmitter loadHandle(final String className, final String methodName, final String descName, final EnumSet<Flag> flags) {
debug("load handle ");
pushType(Type.OBJECT.ldc(method, new Handle(Flag.getValue(flags), className, methodName, descName)));
return this;
}
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:16,代码来源:MethodEmitter.java
注:本文中的jdk.nashorn.internal.codegen.ClassEmitter.Flag类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论