本文整理了Java中org.jruby.Ruby.isObjectSpaceEnabled
方法的一些代码示例,展示了Ruby.isObjectSpaceEnabled
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Ruby.isObjectSpaceEnabled
方法的具体详情如下:
包路径:org.jruby.Ruby
类名称:Ruby
方法名:isObjectSpaceEnabled
暂无
代码示例来源:origin: org.jruby/jruby-complete
/** used by MODULE_ALLOCATOR and RubyClass constructors
*
*/
protected RubyModule(Ruby runtime, RubyClass metaClass) {
this(runtime, metaClass, runtime.isObjectSpaceEnabled());
}
代码示例来源:origin: org.jruby/jruby-core
/** used by MODULE_ALLOCATOR and RubyClass constructors
*
*/
protected RubyModule(Ruby runtime, RubyClass metaClass) {
this(runtime, metaClass, runtime.isObjectSpaceEnabled());
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
/** used by MODULE_ALLOCATOR and RubyClass constructors
*
*/
protected RubyModule(Ruby runtime, RubyClass metaClass) {
this(runtime, metaClass, runtime.isObjectSpaceEnabled());
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
/** used by MODULE_ALLOCATOR and RubyClass constructors
*
*/
protected RubyModule(Ruby runtime, RubyClass metaClass) {
this(runtime, metaClass, runtime.isObjectSpaceEnabled());
}
代码示例来源:origin: org.jruby/jruby-complete
@JRubyMethod(name = { "objectspace", "object_space?" }, alias = { "objectspace?" }, module = true)
public static IRubyObject getObjectSpaceEnabled(IRubyObject recv) {
final Ruby runtime = recv.getRuntime();
return RubyBoolean.newBoolean(runtime, runtime.isObjectSpaceEnabled());
}
代码示例来源:origin: org.jruby/jruby-core
@JRubyMethod(name = { "objectspace", "object_space?" }, alias = { "objectspace?" }, module = true)
public static IRubyObject getObjectSpaceEnabled(IRubyObject recv) {
final Ruby runtime = recv.getRuntime();
return RubyBoolean.newBoolean(runtime, runtime.isObjectSpaceEnabled());
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
@JRubyMethod(name = "objectspace", module = true)
public static IRubyObject getObjectSpaceEnabled(IRubyObject recv) {
Ruby runtime = recv.getRuntime();
return RubyBoolean.newBoolean(runtime, runtime.isObjectSpaceEnabled());
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
@JRubyMethod(name = "objectspace", module = true)
public static IRubyObject getObjectSpaceEnabled(IRubyObject recv) {
Ruby runtime = recv.getRuntime();
return RubyBoolean.newBoolean(runtime, runtime.isObjectSpaceEnabled());
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
/** rb_ary_to_a
*
*/
@JRubyMethod(name = "to_a")
@Override
public RubyArray to_a() {
if(getMetaClass() != getRuntime().getArray()) {
RubyArray dup = new RubyArray(getRuntime(), getRuntime().isObjectSpaceEnabled());
isShared = true;
dup.isShared = true;
dup.values = values;
dup.realLength = realLength;
dup.begin = begin;
return dup;
}
return this;
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
/**
* We lazily stand up the object ID since it forces us to stand up
* per-object state for a given object. We also check for ObjectSpace here,
* and normally we do not register a given object ID into ObjectSpace due
* to the high cost associated with constructing the related weakref. Most
* uses of id/object_id will only ever need it to be a unique identifier,
* and the id2ref behavior provided by ObjectSpace is considered internal
* and not generally supported.
*
* @param objectIdAccessor The variable accessor to use for storing the
* generated object ID
* @return The generated object ID
*/
protected synchronized long initObjectId(RubyBasicObject self, VariableAccessor objectIdAccessor) {
Ruby runtime = self.getRuntime();
long id;
if (runtime.isObjectSpaceEnabled()) {
id = runtime.getObjectSpace().createAndRegisterObjectId(self);
} else {
id = ObjectSpace.calculateObjectId(self);
}
// we use a direct path here to avoid frozen checks
setObjectId(realClass, self, objectIdAccessor.getIndex(), id);
return id;
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
/** rb_ary_to_a
*
*/
@JRubyMethod(name = "to_a")
@Override
public RubyArray to_a() {
if(getMetaClass() != getRuntime().getArray()) {
RubyArray dup = new RubyArray(getRuntime(), getRuntime().isObjectSpaceEnabled());
isShared = true;
dup.isShared = true;
dup.values = values;
dup.realLength = realLength;
dup.begin = begin;
return dup;
}
return this;
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
long id;
if (runtime.isObjectSpaceEnabled()) {
id = runtime.getObjectSpace().createAndRegisterObjectId(self);
} else {
代码示例来源:origin: org.jruby/jruby-complete
long id;
if (runtime.isObjectSpaceEnabled()) {
id = runtime.getObjectSpace().createAndRegisterObjectId(self);
} else {
代码示例来源:origin: org.jruby/jruby-core
long id;
if (runtime.isObjectSpaceEnabled()) {
id = runtime.getObjectSpace().createAndRegisterObjectId(self);
} else {
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
if (!runtime.isObjectSpaceEnabled()) {
throw runtime.newRuntimeError("ObjectSpace is disabled; each_object will only work with Class, pass -X+O to enable");
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
if (!runtime.isObjectSpaceEnabled()) {
throw runtime.newRuntimeError("ObjectSpace is disabled; each_object will only work with Class, pass -X+O to enable");
代码示例来源:origin: org.jruby/jruby-complete
@JRubyMethod(name = "_id2ref", required = 1, module = true, visibility = PRIVATE)
public static IRubyObject id2ref(IRubyObject recv, IRubyObject id) {
final Ruby runtime = id.getRuntime();
if (!(id instanceof RubyFixnum)) {
throw runtime.newTypeError(id, runtime.getFixnum());
}
long longId = ((RubyFixnum) id).getLongValue();
if (longId == 0) {
return runtime.getFalse();
} else if (longId == 20) {
return runtime.getTrue();
} else if (longId == 8) {
return runtime.getNil();
} else if (longId % 2 != 0) {
// odd
return runtime.newFixnum((longId - 1) / 2);
} else {
if (runtime.isObjectSpaceEnabled()) {
IRubyObject object = runtime.getObjectSpace().id2ref(longId);
if (object == null) {
return runtime.getNil();
}
return object;
} else {
runtime.getWarnings().warn("ObjectSpace is disabled; _id2ref only supports immediates, pass -X+O to enable");
throw runtime.newRangeError(String.format("0x%016x is not id value", longId));
}
}
}
代码示例来源:origin: org.jruby/jruby-core
@JRubyMethod(name = "_id2ref", required = 1, module = true, visibility = PRIVATE)
public static IRubyObject id2ref(IRubyObject recv, IRubyObject id) {
final Ruby runtime = id.getRuntime();
if (!(id instanceof RubyFixnum)) {
throw runtime.newTypeError(id, runtime.getFixnum());
}
long longId = ((RubyFixnum) id).getLongValue();
if (longId == 0) {
return runtime.getFalse();
} else if (longId == 20) {
return runtime.getTrue();
} else if (longId == 8) {
return runtime.getNil();
} else if (longId % 2 != 0) {
// odd
return runtime.newFixnum((longId - 1) / 2);
} else {
if (runtime.isObjectSpaceEnabled()) {
IRubyObject object = runtime.getObjectSpace().id2ref(longId);
if (object == null) {
return runtime.getNil();
}
return object;
} else {
runtime.getWarnings().warn("ObjectSpace is disabled; _id2ref only supports immediates, pass -X+O to enable");
throw runtime.newRangeError(String.format("0x%016x is not id value", longId));
}
}
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
if (runtime.isObjectSpaceEnabled()) {
IRubyObject object = runtime.getObjectSpace().id2ref(longId);
if (object == null) {
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
if (runtime.isObjectSpaceEnabled()) {
IRubyObject object = runtime.getObjectSpace().id2ref(longId);
if (object == null) {
内容来源于网络,如有侵权,请联系作者删除!