本文整理了Java中org.jruby.RubyModule.getConstantFromNoConstMissing
方法的一些代码示例,展示了RubyModule.getConstantFromNoConstMissing
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RubyModule.getConstantFromNoConstMissing
方法的具体详情如下:
包路径:org.jruby.RubyModule
类名称:RubyModule
方法名:getConstantFromNoConstMissing
暂无
代码示例来源:origin: org.jruby/jruby-core
public IRubyObject getConstantFromNoConstMissing(String name) {
return getConstantFromNoConstMissing(name, true);
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
public static boolean isModuleAndHasConstant(IRubyObject left, String name) {
return left instanceof RubyModule && ((RubyModule) left).getConstantFromNoConstMissing(name, false) != null;
}
代码示例来源:origin: org.jruby/jruby-complete
public IRubyObject getConstantFromNoConstMissing(String name) {
return getConstantFromNoConstMissing(name, true);
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
@Deprecated
public IRubyObject fastGetConstantFromNoConstMissing(String internedName) {
return getConstantFromNoConstMissing(internedName);
}
代码示例来源:origin: org.jruby/jruby-core
@Deprecated
public IRubyObject fastGetConstantFromNoConstMissing(String internedName) {
return getConstantFromNoConstMissing(internedName);
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
@Deprecated
public IRubyObject fastGetConstantFromNoConstMissing(String internedName) {
return getConstantFromNoConstMissing(internedName);
}
代码示例来源:origin: org.jruby/jruby-complete
public IRubyObject getConstantFrom(String name) {
IRubyObject value = getConstantFromNoConstMissing(name);
return value != null ? value : getConstantFromConstMissing(name);
}
代码示例来源:origin: org.jruby/jruby-complete
@JIT
public static IRubyObject inheritedSearchConst(ThreadContext context, IRubyObject cmVal, String constName, boolean noPrivateConsts) {
RubyModule module;
if (cmVal instanceof RubyModule) {
module = (RubyModule) cmVal;
} else {
throw context.runtime.newTypeError(cmVal + " is not a type/class");
}
IRubyObject constant = noPrivateConsts ? module.getConstantFromNoConstMissing(constName, false) : module.getConstantNoConstMissing(constName);
if (constant == null) {
constant = UndefinedValue.UNDEFINED;
}
return constant;
}
代码示例来源:origin: org.jruby/jruby-complete
public IRubyObject reCacheFrom(RubyModule target, ThreadContext context, String name, int index) {
Invalidator invalidator = context.runtime.getConstantInvalidator(name);
Object newGeneration = invalidator.getData();
IRubyObject value = target.getConstantFromNoConstMissing(name, false);
if (value != null) {
constants[index] = new ConstantCache(value, newGeneration, invalidator, target.hashCode());
} else {
constants[index] = null;
}
return value;
}
代码示例来源:origin: org.jruby/jruby-complete
public IRubyObject noCacheSearchModuleForConst(ThreadContext context, IRubyObject cmVal) {
if (!(cmVal instanceof RubyModule)) throw context.runtime.newTypeError(cmVal + " is not a type/class");
RubyModule module = (RubyModule) cmVal;
// Inheritance lookup
IRubyObject constant = publicOnly ? module.getConstantFromNoConstMissing(name, false) : module.getConstantNoConstMissing(name);
// Call const_missing or cache
if (constant == null) {
return module.callMethod(context, "const_missing", getSymbolicName(context));
}
return constant;
}
代码示例来源:origin: org.jruby/jruby-core
public IRubyObject noCacheSearchModuleForConst(ThreadContext context, IRubyObject cmVal) {
if (!(cmVal instanceof RubyModule)) throw context.runtime.newTypeError(cmVal + " is not a type/class");
RubyModule module = (RubyModule) cmVal;
// Inheritance lookup
IRubyObject constant = publicOnly ? module.getConstantFromNoConstMissing(name, false) : module.getConstantNoConstMissing(name);
// Call const_missing or cache
if (constant == null) {
return module.callMethod(context, "const_missing", getSymbolicName(context));
}
return constant;
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
public IRubyObject reCacheFrom(RubyModule target, ThreadContext context, String name, int index) {
Invalidator invalidator = context.runtime.getConstantInvalidator(name);
Object newGeneration = invalidator.getData();
IRubyObject value = target.getConstantFromNoConstMissing(name, false);
if (value != null) {
constants[index] = new ConstantCache(value, newGeneration, invalidator, target.hashCode());
} else {
constants[index] = null;
}
return value;
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
public IRubyObject reCache(ThreadContext context, RubyModule target) {
Invalidator invalidator = context.runtime.getConstantInvalidator(name);
Object newGeneration = invalidator.getData();
IRubyObject value = target.getConstantFromNoConstMissing(name, false);
if (value != null) {
cache = new ConstantCache(value, newGeneration, invalidator, target.hashCode());
} else {
cache = null;
}
return value;
}
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
public IRubyObject reCacheFrom(RubyModule target, ThreadContext context, String name, int index) {
Invalidator invalidator = context.runtime.getConstantInvalidator(name);
Object newGeneration = invalidator.getData();
IRubyObject value = target.getConstantFromNoConstMissing(name, false);
if (value != null) {
constants[index] = new ConstantCache(value, newGeneration, invalidator, target.hashCode());
} else {
constants[index] = null;
}
return value;
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
private Object cache(Ruby runtime, RubyModule module) {
Object constant = noPrivateConsts ? module.getConstantFromNoConstMissing(constName, false) : module.getConstantNoConstMissing(constName);
if (constant == null) {
constant = UndefinedValue.UNDEFINED;
} else {
// recache
generation = runtime.getConstantInvalidator(constName).getData();
hash = module.hashCode();
cachedConstant = constant;
}
return constant;
}
代码示例来源:origin: org.jruby/jruby-core
public IRubyObject reCacheFrom(RubyModule target, ThreadContext context, String name, int index) {
Invalidator invalidator = context.runtime.getConstantInvalidator(name);
Object newGeneration = invalidator.getData();
IRubyObject value = target.getConstantFromNoConstMissing(name, false);
if (value != null) {
constants[index] = new ConstantCache(value, newGeneration, invalidator, target.hashCode());
} else {
constants[index] = null;
}
return value;
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
private Object cache(Ruby runtime, RubyModule module) {
Object constant = noPrivateConsts ? module.getConstantFromNoConstMissing(constName, false) : module.getConstantNoConstMissing(constName);
if (constant == null) {
constant = UndefinedValue.UNDEFINED;
} else {
// recache
generation = runtime.getConstantInvalidator(constName).getData();
hash = module.hashCode();
cachedConstant = constant;
}
return constant;
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
public IRubyObject reCache(ThreadContext context, RubyModule target) {
Invalidator invalidator = context.runtime.getConstantInvalidator(name);
Object newGeneration = invalidator.getData();
IRubyObject value = target.getConstantFromNoConstMissing(name, false);
if (value != null) {
cache = new ConstantCache(value, newGeneration, invalidator, target.hashCode());
} else {
cache = null;
}
return value;
}
}
代码示例来源:origin: org.jruby/jruby-core
private Object cache(Ruby runtime, RubyModule module) {
String id = getId();
Object constant = noPrivateConsts ? module.getConstantFromNoConstMissing(id, false) : module.getConstantNoConstMissing(id);
if (constant != null) {
Invalidator invalidator = runtime.getConstantInvalidator(id);
cache = new ConstantCache((IRubyObject)constant, invalidator.getData(), invalidator, module.hashCode());
}
return constant;
}
代码示例来源:origin: org.jruby/jruby-complete
private Object cache(Ruby runtime, RubyModule module) {
String id = getId();
Object constant = noPrivateConsts ? module.getConstantFromNoConstMissing(id, false) : module.getConstantNoConstMissing(id);
if (constant != null) {
Invalidator invalidator = runtime.getConstantInvalidator(id);
cache = new ConstantCache((IRubyObject)constant, invalidator.getData(), invalidator, module.hashCode());
}
return constant;
}
内容来源于网络,如有侵权,请联系作者删除!