本文整理了Java中org.jruby.RubyClass.smartLoadOldUser
方法的一些代码示例,展示了RubyClass.smartLoadOldUser
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RubyClass.smartLoadOldUser
方法的具体详情如下:
包路径:org.jruby.RubyClass
类名称:RubyClass
方法名:smartLoadOldUser
[英]Load marshaled data into a blank target object using _load, being "smart" and caching the mechanism for invoking _load. If the metaclass implements custom respond_to?, cache nothing and go slow path invocation of respond_to? and _load every time. Raise error if respond_to? :_load returns true and no :_load is defined. If the metaclass implements _load, cache and use that. Otherwise, error, since _load is not present.
[中]使用_Load将封送的数据加载到一个空白的目标对象中,“智能”并缓存调用_Load的机制。如果元类实现了自定义的respond_to?,不缓存任何内容,并缓慢调用respond_to?而且每次都要加载。如果响应?则引发错误:_load返回true且未定义任何load。如果元类实现了_load,缓存并使用它。否则会出现错误,因为_load不存在。
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
private IRubyObject userUnmarshal(MarshalState state) throws IOException {
String className = unmarshalObject(false).asJavaString();
ByteList marshaled = unmarshalString();
RubyClass classInstance = findClass(className);
RubyString data = RubyString.newString(getRuntime(), marshaled);
if (state.isIvarWaiting()) {
defaultVariablesUnmarshal(data);
state.setIvarWaiting(false);
}
IRubyObject unmarshaled = classInstance.smartLoadOldUser(data);
registerLinkTarget(unmarshaled);
return unmarshaled;
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
private IRubyObject userUnmarshal(MarshalState state) throws IOException {
String className = unmarshalObject(false).asJavaString();
ByteList marshaled = unmarshalString();
RubyClass classInstance = findClass(className);
RubyString data = RubyString.newString(getRuntime(), marshaled);
if (state.isIvarWaiting()) {
defaultVariablesUnmarshal(data);
state.setIvarWaiting(false);
}
IRubyObject unmarshaled = classInstance.smartLoadOldUser(data);
registerLinkTarget(unmarshaled);
return unmarshaled;
}
代码示例来源:origin: org.jruby/jruby-complete
private IRubyObject userUnmarshal(MarshalState state) throws IOException {
String className = unmarshalObject(false).asJavaString();
ByteList marshaled = unmarshalString();
RubyClass classInstance = findClass(className);
RubyString data = RubyString.newString(runtime, marshaled);
IRubyObject unmarshaled;
// Special case Encoding so they are singletons
// See https://bugs.ruby-lang.org/issues/11760
if (classInstance == runtime.getEncoding()) {
unmarshaled = RubyEncoding.find(runtime.getCurrentContext(), classInstance, data);
} else {
if (state.isIvarWaiting()) {
defaultVariablesUnmarshal(data);
state.setIvarWaiting(false);
}
unmarshaled = classInstance.smartLoadOldUser(data);
}
registerLinkTarget(unmarshaled);
return unmarshaled;
}
代码示例来源:origin: org.jruby/jruby-core
private IRubyObject userUnmarshal(MarshalState state) throws IOException {
String className = unmarshalObject(false).asJavaString();
ByteList marshaled = unmarshalString();
RubyClass classInstance = findClass(className);
RubyString data = RubyString.newString(runtime, marshaled);
IRubyObject unmarshaled;
// Special case Encoding so they are singletons
// See https://bugs.ruby-lang.org/issues/11760
if (classInstance == runtime.getEncoding()) {
unmarshaled = RubyEncoding.find(runtime.getCurrentContext(), classInstance, data);
} else {
if (state.isIvarWaiting()) {
defaultVariablesUnmarshal(data);
state.setIvarWaiting(false);
}
unmarshaled = classInstance.smartLoadOldUser(data);
}
registerLinkTarget(unmarshaled);
return unmarshaled;
}
内容来源于网络,如有侵权,请联系作者删除!