org.jruby.RubyModule.getConstantFromNoConstMissing()方法的使用及代码示例

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

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

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;
}

相关文章

微信公众号

最新文章

更多

RubyModule类方法