本文整理了Java中org.jruby.RubyModule.addMethod
方法的一些代码示例,展示了RubyModule.addMethod
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RubyModule.addMethod
方法的具体详情如下:
包路径:org.jruby.RubyModule
类名称:RubyModule
方法名:addMethod
[英]This method is not intended for use by normal users; it is a fast-path method that skips synchronization and hierarchy invalidation to speed boot-time method definition.
[中]此方法不适用于普通用户;它是一种快速路径方法,可以跳过同步和层次结构失效,以加快启动时方法定义。
代码示例来源:origin: org.jruby/jruby-complete
protected final void defineMethods(RubyModule target, DynamicMethod invoker, boolean checkDups) {
String oldName = this.name;
target.addMethod(oldName, invoker);
List<String> aliases = this.aliases;
if ( aliases != null && isPublic() ) {
for (int i = 0; i < aliases.size(); i++) {
String name = aliases.get(i);
if (checkDups && oldName.equals(name)) continue;
target.addMethod(name, invoker);
}
}
}
代码示例来源:origin: org.jruby/jruby-complete
public void addMethod(String id, DynamicMethod method) {
testFrozen("class/module");
if (methodLocation != this) {
methodLocation.addMethod(id, method);
return;
}
if (this instanceof MetaClass) {
// FIXME: Gross and not quite right. See MRI's rb_frozen_class_p logic
((MetaClass) this).getAttached().testFrozen();
}
addMethodInternal(id, method);
}
代码示例来源:origin: org.jruby/jruby-core
protected final void defineMethods(RubyModule target, DynamicMethod invoker, boolean checkDups) {
String oldName = this.name;
target.addMethod(oldName, invoker);
List<String> aliases = this.aliases;
if ( aliases != null && isPublic() ) {
for (int i = 0; i < aliases.size(); i++) {
String name = aliases.get(i);
if (checkDups && oldName.equals(name)) continue;
target.addMethod(name, invoker);
}
}
}
代码示例来源:origin: org.jruby/jruby-core
public void addMethod(String id, DynamicMethod method) {
testFrozen("class/module");
if (methodLocation != this) {
methodLocation.addMethod(id, method);
return;
}
if (this instanceof MetaClass) {
// FIXME: Gross and not quite right. See MRI's rb_frozen_class_p logic
((MetaClass) this).getAttached().testFrozen();
}
addMethodInternal(id, method);
}
代码示例来源:origin: org.jruby/jruby-complete
@Override void install(final RubyModule proxy) {
if ( Modifier.isPublic(field.getModifiers()) ) {
proxy.addMethod(name, new InstanceFieldGetter(name, proxy, field));
}
}
}
代码示例来源:origin: org.jruby/jruby-core
@Override void install(final RubyModule proxy) {
if ( Modifier.isPublic(field.getModifiers()) ) {
proxy.addMethod(name, new InstanceFieldSetter(name, proxy, field));
}
}
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
void install(RubyModule proxy) {
if (Modifier.isPublic(field.getModifiers())) {
proxy.addMethod(name, new InstanceFieldSetter(name, proxy, field));
}
}
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
@Deprecated
public void defineMethod(String name, org.jruby.runtime.callback.Callback method) {
Visibility visibility = name.equals("initialize") ?
PRIVATE : PUBLIC;
addMethod(name, new org.jruby.internal.runtime.methods.FullFunctionCallbackMethod(this, method, visibility));
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
@Deprecated
public void defineFastMethod(String name, org.jruby.runtime.callback.Callback method) {
Visibility visibility = name.equals("initialize") ?
PRIVATE : PUBLIC;
addMethod(name, new org.jruby.internal.runtime.methods.SimpleCallbackMethod(this, method, visibility));
}
代码示例来源:origin: org.jruby/jruby-core
@Override void install(final RubyModule proxy) {
if ( Modifier.isPublic(field.getModifiers()) ) {
proxy.addMethod(name, new InstanceFieldGetter(name, proxy, field));
}
}
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
@Deprecated
public void defineMethod(String name, org.jruby.runtime.callback.Callback method) {
Visibility visibility = name.equals("initialize") ?
PRIVATE : PUBLIC;
addMethod(name, new org.jruby.internal.runtime.methods.FullFunctionCallbackMethod(this, method, visibility));
}
代码示例来源:origin: org.jruby/jruby-complete
@Override void install(final RubyModule proxy) {
if ( Modifier.isPublic(field.getModifiers()) ) {
proxy.addMethod(name, new InstanceFieldSetter(name, proxy, field));
}
}
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
void install(RubyModule proxy) {
if (Modifier.isPublic(field.getModifiers())) {
proxy.addMethod(name, new InstanceFieldGetter(name, proxy, field));
}
}
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
@Deprecated
public void defineFastMethod(String name, org.jruby.runtime.callback.Callback method) {
Visibility visibility = name.equals("initialize") ?
PRIVATE : PUBLIC;
addMethod(name, new org.jruby.internal.runtime.methods.SimpleCallbackMethod(this, method, visibility));
}
代码示例来源:origin: org.jruby/jruby-complete
public void addModuleFunction(String name, DynamicMethod method) {
addMethod(name, method);
getSingletonClass().addMethod(name, method);
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
public static void addInstanceMethod(RubyModule containingClass, String name, DynamicMethod method, Visibility visibility, ThreadContext context, Ruby runtime) {
containingClass.addMethod(name, method);
RubySymbol sym = runtime.fastNewSymbol(name);
if (visibility == Visibility.MODULE_FUNCTION) {
addModuleMethod(containingClass, name, method, context, sym);
}
callNormalMethodHook(containingClass, context, sym);
}
代码示例来源:origin: org.jruby/jruby-complete
public static RubySymbol addInstanceMethod(RubyModule containingClass, RubySymbol symbol, DynamicMethod method, Visibility visibility, ThreadContext context, Ruby runtime) {
containingClass.addMethod(symbol.idString(), method);
if (!containingClass.isRefinement()) callNormalMethodHook(containingClass, context, symbol);
if (visibility == Visibility.MODULE_FUNCTION) addModuleMethod(containingClass, method, context, symbol);
return symbol;
}
代码示例来源:origin: org.jruby/jruby-core
public static RubySymbol addInstanceMethod(RubyModule containingClass, RubySymbol symbol, DynamicMethod method, Visibility visibility, ThreadContext context, Ruby runtime) {
containingClass.addMethod(symbol.idString(), method);
if (!containingClass.isRefinement()) callNormalMethodHook(containingClass, context, symbol);
if (visibility == Visibility.MODULE_FUNCTION) addModuleMethod(containingClass, method, context, symbol);
return symbol;
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
void install(RubyModule proxy) {
if (hasLocalMethod()) {
DynamicMethod method = new InstanceMethodInvoker(proxy, methods);
proxy.addMethod(name, method);
if (aliases != null && isPublic()) {
proxy.defineAliases(aliases, this.name);
aliases = null;
}
}
}
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
void install(RubyModule proxy) {
if (hasLocalMethod()) {
DynamicMethod method = new InstanceMethodInvoker(proxy, methods);
proxy.addMethod(name, method);
if (aliases != null && isPublic()) {
proxy.defineAliases(aliases, this.name);
aliases = null;
}
}
}
}
内容来源于网络,如有侵权,请联系作者删除!