本文整理汇总了Java中org.jruby.runtime.ObjectAllocator类的典型用法代码示例。如果您正苦于以下问题:Java ObjectAllocator类的具体用法?Java ObjectAllocator怎么用?Java ObjectAllocator使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
ObjectAllocator类属于org.jruby.runtime包,在下文中一共展示了ObjectAllocator类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: load
import org.jruby.runtime.ObjectAllocator; //导入依赖的package包/类
public void load(Ruby runtime, boolean wrap) throws IOException {
RubyModule jo = runtime.defineModule("Jo");
final ExecutorService executor = Executors.newCachedThreadPool(new ThreadFactory() {
public Thread newThread(Runnable r) {
Thread t = new Thread(r);
t.setDaemon(true);
return t;
}
});
jo.setInternalVariable("executor", executor);
RubyClass joFuture = jo.defineClassUnder("Future", runtime.getObject(), ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR);
RubyClass joChannel = jo.defineClassUnder("Channel", runtime.getObject(), ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR);
jo.defineAnnotatedMethods(JoMethods.class);
joFuture.defineAnnotatedMethods(JoFuture.class);
joChannel.defineAnnotatedMethods(JoChannel.class);
runtime.addFinalizer(new Finalizable() {
public void finalize() {
executor.shutdown();
}
});
}
开发者ID:headius,项目名称:jo,代码行数:24,代码来源:JoLibrary.java
示例2: load
import org.jruby.runtime.ObjectAllocator; //导入依赖的package包/类
public void load(Ruby runtime, boolean wrap) {
RubyModule persistent = runtime.getOrCreateModule("Persistent");
RubyClass persistentVector = persistent.defineOrGetClassUnder("Vector", runtime.getObject());
persistentVector.setAllocator(new ObjectAllocator() {
@Override
public IRubyObject allocate(Ruby ruby, RubyClass rubyClass) {
return new PersistentVector(ruby, rubyClass);
}
});
persistentVector.includeModule(runtime.getEnumerable());
persistentVector.defineAnnotatedMethods(PersistentVector.class);
}
开发者ID:Who828,项目名称:persistent_data_structures,代码行数:13,代码来源:PersistentVectorLibrary.java
示例3: createRubyMap
import org.jruby.runtime.ObjectAllocator; //导入依赖的package包/类
public static void createRubyMap(Ruby runtime) {
RubyModule protobuf = runtime.getClassFromPath("Google::Protobuf");
RubyClass cMap = protobuf.defineClassUnder("Map", runtime.getObject(), new ObjectAllocator() {
@Override
public IRubyObject allocate(Ruby ruby, RubyClass rubyClass) {
return new RubyMap(ruby, rubyClass);
}
});
cMap.includeModule(runtime.getEnumerable());
cMap.defineAnnotatedMethods(RubyMap.class);
}
开发者ID:bazelbuild,项目名称:bazel,代码行数:12,代码来源:RubyMap.java
示例4: createRubyOneofBuilderContext
import org.jruby.runtime.ObjectAllocator; //导入依赖的package包/类
public static void createRubyOneofBuilderContext(Ruby runtime) {
RubyModule protobuf = runtime.getClassFromPath("Google::Protobuf");
RubyModule internal = protobuf.defineModuleUnder("Internal");
RubyClass cRubyOneofBuidlerContext = internal.defineClassUnder("OneofBuilderContext", runtime.getObject(), new ObjectAllocator() {
@Override
public IRubyObject allocate(Ruby ruby, RubyClass rubyClass) {
return new RubyOneofBuilderContext(ruby, rubyClass);
}
});
cRubyOneofBuidlerContext.defineAnnotatedMethods(RubyOneofBuilderContext.class);
}
开发者ID:bazelbuild,项目名称:bazel,代码行数:12,代码来源:RubyOneofBuilderContext.java
示例5: createRubyOneofDescriptor
import org.jruby.runtime.ObjectAllocator; //导入依赖的package包/类
public static void createRubyOneofDescriptor(Ruby runtime) {
RubyModule protobuf = runtime.getClassFromPath("Google::Protobuf");
RubyClass cRubyOneofDescriptor = protobuf.defineClassUnder("OneofDescriptor", runtime.getObject(), new ObjectAllocator() {
@Override
public IRubyObject allocate(Ruby ruby, RubyClass rubyClass) {
return new RubyOneofDescriptor(ruby, rubyClass);
}
});
cRubyOneofDescriptor.defineAnnotatedMethods(RubyOneofDescriptor.class);
cRubyOneofDescriptor.includeModule(runtime.getEnumerable());
}
开发者ID:bazelbuild,项目名称:bazel,代码行数:12,代码来源:RubyOneofDescriptor.java
注:本文中的org.jruby.runtime.ObjectAllocator类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论