org.jruby.Ruby.setSuperMethodMissing()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(2.6k)|赞(0)|评价(0)|浏览(93)

本文整理了Java中org.jruby.Ruby.setSuperMethodMissing方法的一些代码示例,展示了Ruby.setSuperMethodMissing的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Ruby.setSuperMethodMissing方法的具体详情如下:
包路径:org.jruby.Ruby
类名称:Ruby
方法名:setSuperMethodMissing

Ruby.setSuperMethodMissing介绍

暂无

代码示例

代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby

runtime.setSuperMethodMissing(new MethodMissingMethod(module) {
  @Override
  public IRubyObject methodMissing(ThreadContext context, IRubyObject self, RubyModule clazz, String name, IRubyObject[] args, Block block) {

代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby

runtime.setSuperMethodMissing(new MethodMissingMethod(module) {
  @Override
  public IRubyObject methodMissing(ThreadContext context, IRubyObject self, RubyModule clazz, String name, IRubyObject[] args, Block block) {

代码示例来源:origin: org.jruby/jruby-complete

public static RubyModule createKernelModule(Ruby runtime) {
  RubyModule module = runtime.defineModule("Kernel");
  runtime.setKernel(module);
  module.defineAnnotatedMethods(RubyKernel.class);
  module.setFlag(RubyModule.NEEDSIMPL_F, false); //Kernel is the only normal Module that doesn't need an implementor
  runtime.setPrivateMethodMissing(new MethodMissingMethod(module, PRIVATE, CallType.NORMAL));
  runtime.setProtectedMethodMissing(new MethodMissingMethod(module, PROTECTED, CallType.NORMAL));
  runtime.setVariableMethodMissing(new MethodMissingMethod(module, PUBLIC, CallType.VARIABLE));
  runtime.setSuperMethodMissing(new MethodMissingMethod(module, PUBLIC, CallType.SUPER));
  runtime.setNormalMethodMissing(new MethodMissingMethod(module, PUBLIC, CallType.NORMAL));
  if (runtime.getInstanceConfig().isAssumeLoop()) {
    module.defineAnnotatedMethods(LoopMethods.class);
  }
  recacheBuiltinMethods(runtime);
  return module;
}

代码示例来源:origin: org.jruby/jruby-core

public static RubyModule createKernelModule(Ruby runtime) {
  RubyModule module = runtime.defineModule("Kernel");
  runtime.setKernel(module);
  module.defineAnnotatedMethods(RubyKernel.class);
  module.setFlag(RubyModule.NEEDSIMPL_F, false); //Kernel is the only normal Module that doesn't need an implementor
  runtime.setPrivateMethodMissing(new MethodMissingMethod(module, PRIVATE, CallType.NORMAL));
  runtime.setProtectedMethodMissing(new MethodMissingMethod(module, PROTECTED, CallType.NORMAL));
  runtime.setVariableMethodMissing(new MethodMissingMethod(module, PUBLIC, CallType.VARIABLE));
  runtime.setSuperMethodMissing(new MethodMissingMethod(module, PUBLIC, CallType.SUPER));
  runtime.setNormalMethodMissing(new MethodMissingMethod(module, PUBLIC, CallType.NORMAL));
  if (runtime.getInstanceConfig().isAssumeLoop()) {
    module.defineAnnotatedMethods(LoopMethods.class);
  }
  recacheBuiltinMethods(runtime);
  return module;
}

相关文章

微信公众号

最新文章

更多

Ruby类方法