本文整理了Java中org.jruby.RubyClass.getClassRuntime
方法的一些代码示例,展示了RubyClass.getClassRuntime
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RubyClass.getClassRuntime
方法的具体详情如下:
包路径:org.jruby.RubyClass
类名称:RubyClass
方法名:getClassRuntime
暂无
代码示例来源:origin: org.jruby/jruby-core
/**
* Will return the runtime that this object is associated with.
*
* @return current runtime
*/
@Override
public final Ruby getRuntime() {
return getMetaClass().getClassRuntime();
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
/** rb_ary_dup
*
*/
public final RubyArray aryDup() {
RubyArray dup = new RubyArray(metaClass.getClassRuntime(), metaClass, values, begin, realLength);
dup.isShared = true;
isShared = true;
dup.flags |= flags & (TAINTED_F | UNTRUSTED_F); // from DUP_SETUP
// rb_copy_generic_ivar from DUP_SETUP here ...unlikely..
return dup;
}
代码示例来源:origin: org.jruby/jruby-complete
/**
* Will return the runtime that this object is associated with.
*
* @return current runtime
*/
@Override
public final Ruby getRuntime() {
return getMetaClass().getClassRuntime();
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
public final RubyArray aryDup19() {
// In 1.9, rb_ary_dup logic changed so that on subclasses of Array,
// dup returns an instance of Array, rather than an instance of the subclass
// Also, taintedness and trustedness are not inherited to duplicates
RubyArray dup = new RubyArray(metaClass.getClassRuntime(), values, begin, realLength);
dup.isShared = true;
isShared = true;
// rb_copy_generic_ivar from DUP_SETUP here ...unlikely..
return dup;
}
代码示例来源:origin: org.jruby/jruby-core
/**
* Converts this object to type 'targetType' using 'convertMethod' method (MRI: convert_type).
*
* @param obj the object to convert
* @param target is the type we are trying to convert to
* @param convertMethod is the method to be called to try and convert to target type
* @param raise will throw an Error if conversion does not work
* @return the converted value
*/
public static IRubyObject convertToType(IRubyObject obj, RubyClass target, String convertMethod, boolean raise) {
return convertToType(target.getClassRuntime().getCurrentContext(), obj, target, convertMethod, raise);
}
代码示例来源:origin: org.jruby/jruby-core
/**
* Overridden dup for fast-path logic.
*
* @return A new RubyArray sharing the original backing store.
*/
public IRubyObject dup() {
if (metaClass.getClassIndex() != ClassIndex.ARRAY) return super.dup();
RubyArray dup = new RubyArray(metaClass.getClassRuntime(), values, begin, realLength);
dup.isShared = isShared = true;
dup.flags |= flags & TAINTED_F; // from DUP_SETUP
return dup;
}
代码示例来源:origin: org.jruby/jruby-complete
public static DynamicMethod selectMethodMissing(RubyClass selfClass, Visibility visibility, String name, CallType callType) {
Ruby runtime = selfClass.getClassRuntime();
if (name.equals("method_missing")) {
return selectInternalMM(runtime, visibility, callType);
}
DynamicMethod methodMissing = selfClass.searchMethod("method_missing");
if (methodMissing.isUndefined() || methodMissing.equals(runtime.getDefaultMethodMissing())) {
return selectInternalMM(runtime, visibility, callType);
}
return new MethodMissingMethod(methodMissing, visibility, callType);
}
代码示例来源:origin: org.jruby/jruby-core
public static DynamicMethod selectMethodMissing(RubyClass selfClass, Visibility visibility, String name, CallType callType) {
Ruby runtime = selfClass.getClassRuntime();
if (name.equals("method_missing")) {
return selectInternalMM(runtime, visibility, callType);
}
DynamicMethod methodMissing = selfClass.searchMethod("method_missing");
if (methodMissing.isUndefined() || methodMissing.equals(runtime.getDefaultMethodMissing())) {
return selectInternalMM(runtime, visibility, callType);
}
return new MethodMissingMethod(methodMissing, visibility, callType);
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
/**
* Overridden dup for fast-path logic.
*
* @return A new RubyString sharing the original backing store.
*/
@Override
public IRubyObject dup() {
RubyClass mc = metaClass.getRealClass();
if (mc.index != ClassIndex.STRING) return super.dup();
return strDup(mc.getClassRuntime(), mc.getRealClass());
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
/**
* Overridden dup for fast-path logic.
*
* @return A new RubyString sharing the original backing store.
*/
@Override
public IRubyObject dup() {
RubyClass mc = metaClass.getRealClass();
if (mc.index != ClassIndex.STRING) return super.dup();
return strDup(mc.getClassRuntime(), mc.getRealClass());
}
代码示例来源:origin: org.jruby/jruby-complete
static RubyArray members(RubyClass type) {
final RubyArray member = __member__(type);
final int len = member.getLength();
IRubyObject[] result = new IRubyObject[len];
for ( int i = 0; i < len; i++ ) {
result[i] = member.eltInternal(i);
}
return RubyArray.newArrayNoCopy(type.getClassRuntime(), result);
}
代码示例来源:origin: org.jruby/jruby-core
public final RubyString makeIndependent(final int length) {
RubyClass klass = metaClass;
RubyString str = strDup(klass.getClassRuntime(), klass);
str.modify(length);
str.setFrozen(true);
str.infectBy(this);
return str;
}
代码示例来源:origin: org.jruby/jruby-core
public final RubyString makeIndependent() {
RubyClass klass = metaClass;
RubyString str = strDup(klass.getClassRuntime(), klass);
str.modify();
str.setFrozen(true);
str.infectBy(this);
return str;
}
代码示例来源:origin: org.jruby/jruby-complete
/** short circuit for String key comparison
*
*/
@Override
public final boolean eql(IRubyObject other) {
RubyClass metaclass = getMetaClass();
Ruby runtime = metaclass.getClassRuntime();
if (metaclass != runtime.getString() || metaclass != other.getMetaClass()) return super.eql(other);
return eql19(other);
}
代码示例来源:origin: org.jruby/jruby-complete
/**
* Overridden dup for fast-path logic.
*
* @return A new RubyString sharing the original backing store.
*/
@Override
public IRubyObject dup() {
RubyClass mc = metaClass.getRealClass();
if (mc.getClassIndex() != ClassIndex.STRING) return super.dup();
return strDup(mc.getClassRuntime(), mc.getRealClass());
}
代码示例来源:origin: org.jruby/jruby-core
/** short circuit for String key comparison
*
*/
@Override
public final boolean eql(IRubyObject other) {
RubyClass metaclass = getMetaClass();
Ruby runtime = metaclass.getClassRuntime();
if (metaclass != runtime.getString() || metaclass != other.getMetaClass()) return super.eql(other);
return eql19(other);
}
代码示例来源:origin: org.jruby/jruby-complete
public RubyString newFrozen() {
if (isFrozen()) return this;
RubyClass klass = getMetaClass();
RubyString str = strDup(klass.getClassRuntime());
str.setCodeRange(getCodeRange());
str.setFrozen(true);
return str;
}
代码示例来源:origin: org.jruby/jruby-complete
@Override
public IRubyObject subseq(RubyClass metaClass, long beg, long len, boolean light) {
if (!packed()) return super.subseq(metaClass, beg, len, light);
if (len == 0) return newEmptyArray(metaClass.getClassRuntime());
if (beg != 0 || len != 1) {
unpack();
return super.subseq(metaClass, beg, len, light);
}
return new RubyArrayOneObject(metaClass, this);
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
/** short circuit for String key comparison
*
*/
@Override
public final boolean eql(IRubyObject other) {
RubyClass metaclass = getMetaClass();
Ruby runtime = metaclass.getClassRuntime();
if (metaclass != runtime.getString() || metaclass != other.getMetaClass()) return super.eql(other);
return runtime.is1_9() ? eql19(runtime, other) : eql18(runtime, other);
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
/** short circuit for String key comparison
*
*/
@Override
public final boolean eql(IRubyObject other) {
RubyClass metaclass = getMetaClass();
Ruby runtime = metaclass.getClassRuntime();
if (metaclass != runtime.getString() || metaclass != other.getMetaClass()) return super.eql(other);
return runtime.is1_9() ? eql19(runtime, other) : eql18(runtime, other);
}
内容来源于网络,如有侵权,请联系作者删除!