本文整理了Java中org.jruby.RubyClass.getSuperClass
方法的一些代码示例,展示了RubyClass.getSuperClass
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RubyClass.getSuperClass
方法的具体详情如下:
包路径:org.jruby.RubyClass
类名称:RubyClass
方法名:getSuperClass
暂无
代码示例来源:origin: org.jruby/jruby-complete
@Override
protected RubyClass getSuperClass(RubyClass definingModule) {
return definingModule.getSuperClass();
}
代码示例来源:origin: org.jruby/jruby-core
@Override
protected RubyClass getSuperClass(RubyClass definingModule) {
return definingModule.getSuperClass();
}
代码示例来源:origin: org.jruby/jruby-complete
public static Class<? extends IRubyObject> nearestReifiedClass(final RubyClass klass) {
RubyClass current = klass;
do {
Class<? extends IRubyObject> reified = current.getReifiedClass();
if ( reified != null ) return reified;
current = current.getSuperClass();
}
while ( current != null );
return null;
}
代码示例来源:origin: org.jruby/jruby-core
public static Class<? extends IRubyObject> nearestReifiedClass(final RubyClass klass) {
RubyClass current = klass;
do {
Class<? extends IRubyObject> reified = current.getReifiedClass();
if ( reified != null ) return reified;
current = current.getSuperClass();
}
while ( current != null );
return null;
}
代码示例来源:origin: org.jruby/jruby-complete
private RubyClass classOf() {
final RubyClass metaClass = getMetaClass();
return metaClass instanceof MetaClass ? metaClass.getSuperClass() : metaClass;
}
代码示例来源:origin: org.jruby/jruby-core
private RubyClass classOf() {
final RubyClass metaClass = getMetaClass();
return metaClass instanceof MetaClass ? metaClass.getSuperClass() : metaClass;
}
代码示例来源:origin: org.jruby/jruby-complete
@Override
protected RubyClass getSuperClass(RubyClass definingModule) {
return definingModule.getMetaClass().getMetaClass().getSuperClass();
}
代码示例来源:origin: org.jruby/jruby-core
private static IRubyObject getInternalVariable(RubyClass type, String internedName) {
RubyClass structClass = type.getRuntime().getStructClass();
IRubyObject variable;
while (type != null && type != structClass) {
if ((variable = (IRubyObject)type.getInternalVariable(internedName)) != null) {
return variable;
}
type = type.getSuperClass();
}
return type.getRuntime().getNil();
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
private static IRubyObject getInternalVariable(RubyClass type, String internedName) {
RubyClass structClass = type.getRuntime().getStructClass();
IRubyObject variable;
while (type != null && type != structClass) {
if ((variable = (IRubyObject)type.getInternalVariable(internedName)) != null) {
return variable;
}
type = type.getSuperClass();
}
return type.getRuntime().getNil();
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
private static IRubyObject getInternalVariable(RubyClass type, String internedName) {
RubyClass structClass = type.getRuntime().getStructClass();
IRubyObject variable;
while (type != null && type != structClass) {
if ((variable = (IRubyObject)type.getInternalVariable(internedName)) != null) {
return variable;
}
type = type.getSuperClass();
}
return type.getRuntime().getNil();
}
代码示例来源:origin: org.jruby/jruby-complete
private static IRubyObject getInternalVariable(RubyClass type, String internedName) {
RubyClass structClass = type.getRuntime().getStructClass();
IRubyObject variable;
while (type != null && type != structClass) {
if ((variable = (IRubyObject)type.getInternalVariable(internedName)) != null) {
return variable;
}
type = type.getSuperClass();
}
return type.getRuntime().getNil();
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
public static IRubyObject allocateProxy(Object javaObject, RubyClass clazz) {
// Arrays are never stored in OPC
if (clazz.getSuperClass() == clazz.getRuntime().getJavaSupport().getArrayProxyClass()) {
return new ArrayJavaProxy(clazz.getRuntime(), clazz, javaObject, JavaUtil.getJavaConverter(javaObject.getClass().getComponentType()));
}
IRubyObject proxy = clazz.allocate();
if (proxy instanceof JavaProxy) {
((JavaProxy)proxy).setObject(javaObject);
} else {
JavaObject wrappedObject = JavaObject.wrap(clazz.getRuntime(), javaObject);
proxy.dataWrapStruct(wrappedObject);
}
return proxy;
}
代码示例来源:origin: org.jruby/jruby-complete
private static void reifyWithAncestors(RubyClass klazz) {
RubyClass realSuper = klazz.getSuperClass().getRealClass();
if (realSuper.getReifiedClass() == null) reifyWithAncestors(realSuper);
synchronized (klazz) {
klazz.reify();
klazz.setAllocator(new ReifyingAllocator(klazz.getReifiedClass()));
}
}
}
代码示例来源:origin: org.jruby/jruby-core
private static void reifyWithAncestors(RubyClass klazz) {
RubyClass realSuper = klazz.getSuperClass().getRealClass();
if (realSuper.getReifiedClass() == null) reifyWithAncestors(realSuper);
synchronized (klazz) {
klazz.reify();
klazz.setAllocator(new ReifyingAllocator(klazz.getReifiedClass()));
}
}
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
private static void reifyWithAncestors(RubyClass klazz) {
RubyClass realSuper = klazz.getSuperClass().getRealClass();
if (realSuper.getReifiedClass() == null) reifyWithAncestors(realSuper);
synchronized (klazz) {
klazz.reify();
klazz.setAllocator(new ReifyingAllocator(klazz.getReifiedClass()));
}
}
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
private static void reifyWithAncestors(RubyClass klazz) {
RubyClass realSuper = klazz.getSuperClass().getRealClass();
if (realSuper.getReifiedClass() == null) reifyWithAncestors(realSuper);
synchronized (klazz) {
klazz.reify();
klazz.setAllocator(new ReifyingAllocator(klazz.getReifiedClass()));
}
}
}
代码示例来源:origin: org.jruby/jruby-core
private RubyClass getSuperSingletonMetaClass() {
if (attached instanceof RubyClass) {
RubyClass superClass = ((RubyClass) attached).getSuperClass();
if (superClass != null) superClass = superClass.getRealClass();
// #<Class:BasicObject>'s singleton class == Class.singleton_class
if (superClass == null) return runtime.getClassClass().getSingletonClass();
return superClass.getMetaClass().getSingletonClass();
}
return getSuperClass().getRealClass().getMetaClass(); // NOTE: is this correct?
}
代码示例来源:origin: org.jruby/jruby-complete
private RubyClass getSuperSingletonMetaClass() {
if (attached instanceof RubyClass) {
RubyClass superClass = ((RubyClass) attached).getSuperClass();
if (superClass != null) superClass = superClass.getRealClass();
// #<Class:BasicObject>'s singleton class == Class.singleton_class
if (superClass == null) return runtime.getClassClass().getSingletonClass();
return superClass.getMetaClass().getSingletonClass();
}
return getSuperClass().getRealClass().getMetaClass(); // NOTE: is this correct?
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
@Override
public Object interpret(ThreadContext context, DynamicScope currDynScope, IRubyObject self, Object[] temp, Block aBlock) {
IRubyObject[] args = prepareArguments(context, self, getCallArgs(), currDynScope, temp);
Block block = prepareBlock(context, self, currDynScope, temp);
String methodName = methAddr.getName();
RubyModule definingModule = (RubyModule) getDefiningModule().retrieve(context, self, currDynScope, temp);
RubyClass superClass = definingModule.getMetaClass().getSuperClass();
DynamicMethod method = superClass != null ? superClass.searchMethod(methodName) : UndefinedMethod.INSTANCE;
Object rVal = method.isUndefined() ? Helpers.callMethodMissing(context, self, method.getVisibility(), methodName, CallType.SUPER, args, block)
: method.call(context, self, superClass, methodName, args, block);
return hasUnusedResult() ? null : rVal;
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
@Override
public Object interpret(ThreadContext context, DynamicScope currDynScope, IRubyObject self, Object[] temp, Block aBlock) {
IRubyObject[] args = prepareArguments(context, self, getCallArgs(), currDynScope, temp);
Block block = prepareBlock(context, self, currDynScope, temp);
String methodName = methAddr.getName();
RubyModule definingModule = (RubyModule) getDefiningModule().retrieve(context, self, currDynScope, temp);
RubyClass superClass = definingModule.getMetaClass().getSuperClass();
DynamicMethod method = superClass != null ? superClass.searchMethod(methodName) : UndefinedMethod.INSTANCE;
Object rVal = method.isUndefined() ? Helpers.callMethodMissing(context, self, method.getVisibility(), methodName, CallType.SUPER, args, block)
: method.call(context, self, superClass, methodName, args, block);
return hasUnusedResult() ? null : rVal;
}
内容来源于网络,如有侵权,请联系作者删除!