org.jruby.RubyClass.getConstantNoConstMissing()方法的使用及代码示例

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

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

RubyClass.getConstantNoConstMissing介绍

暂无

代码示例

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

private static Mutex getMutexForThreadExclusive(ThreadContext context, RubyClass recv) {
  Mutex mutex = (Mutex) recv.getConstantNoConstMissing(MUTEX_FOR_THREAD_EXCLUSIVE, false, false);
  if (mutex != null) return mutex;
  synchronized (recv) {
    mutex = (Mutex) recv.getConstantNoConstMissing(MUTEX_FOR_THREAD_EXCLUSIVE, false, false);
    if (mutex == null) {
      mutex = Mutex.newInstance(context, context.runtime.getThread().getClass("Mutex"), NULL_ARRAY, Block.NULL_BLOCK);
      recv.setConstant(MUTEX_FOR_THREAD_EXCLUSIVE, mutex, true);
    }
    return mutex;
  }
}

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

private static Mutex getMutexForThreadExclusive(ThreadContext context, RubyClass recv) {
  Mutex mutex = (Mutex) recv.getConstantNoConstMissing(MUTEX_FOR_THREAD_EXCLUSIVE, false, false);
  if (mutex != null) return mutex;
  synchronized (recv) {
    mutex = (Mutex) recv.getConstantNoConstMissing(MUTEX_FOR_THREAD_EXCLUSIVE, false, false);
    if (mutex == null) {
      mutex = Mutex.newInstance(context, context.runtime.getThread().getClass("Mutex"), NULL_ARRAY, Block.NULL_BLOCK);
      recv.setConstant(MUTEX_FOR_THREAD_EXCLUSIVE, mutex, true);
    }
    return mutex;
  }
}

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

final IRubyObject rbAltSeparator = File.getConstantNoConstMissing("ALT_SEPARATOR");
if (rbAltSeparator != null && rbAltSeparator != context.nil) {
  altSeparator = rbAltSeparator.toString();

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

final IRubyObject rbAltSeparator = File.getConstantNoConstMissing("ALT_SEPARATOR");
if (rbAltSeparator != null && rbAltSeparator != context.nil) {
  altSeparator = rbAltSeparator.toString();

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

public static void initARGV(Ruby runtime) {
  // define ARGV and $* for this runtime
  RubyArray argvArray = runtime.newArray();
  String[] argv = runtime.getInstanceConfig().getArgv();
  for (String arg : argv) {
    argvArray.append(RubyString.newInternalFromJavaExternal(runtime, arg));
  }
  if (runtime.getObject().getConstantNoConstMissing("ARGV") != null) {
    ((RubyArray)runtime.getObject().getConstant("ARGV")).replace(argvArray);
  } else {
    runtime.getObject().setConstantQuiet("ARGV", argvArray);
    runtime.getGlobalVariables().define("$*", new ValueAccessor(argvArray), GLOBAL);
  }
}

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

public static void initARGV(Ruby runtime) {
  // define ARGV and $* for this runtime
  RubyArray argvArray = runtime.newArray();
  String[] argv = runtime.getInstanceConfig().getArgv();
  for (String arg : argv) {
    argvArray.append(RubyString.newInternalFromJavaExternal(runtime, arg));
  }
  if (runtime.getObject().getConstantNoConstMissing("ARGV") != null) {
    ((RubyArray)runtime.getObject().getConstant("ARGV")).replace(argvArray);
  } else {
    runtime.getObject().setConstantQuiet("ARGV", argvArray);
    runtime.getGlobalVariables().define("$*", new ValueAccessor(argvArray), GLOBAL);
  }
}

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

public static void initARGV(Ruby runtime) {
  // define ARGV and $* for this runtime
  RubyArray argvArray = runtime.newArray();
  String[] argv = runtime.getInstanceConfig().getArgv();
  for (String arg : argv) {
    argvArray.append(RubyString.newInternalFromJavaExternal(runtime, arg));
  }
  if (runtime.getObject().getConstantNoConstMissing("ARGV") != null) {
    ((RubyArray)runtime.getObject().getConstant("ARGV")).replace(argvArray);
  } else {
    runtime.getObject().setConstantQuiet("ARGV", argvArray);
    runtime.getGlobalVariables().define("$*", new ValueAccessor(argvArray), GLOBAL);
  }
}

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

public static void initARGV(Ruby runtime) {
  // define ARGV and $* for this runtime
  RubyArray argvArray = runtime.newArray();
  String[] argv = runtime.getInstanceConfig().getArgv();
  for (String arg : argv) {
    argvArray.append(RubyString.newInternalFromJavaExternal(runtime, arg));
  }
  if (runtime.getObject().getConstantNoConstMissing("ARGV") != null) {
    ((RubyArray)runtime.getObject().getConstant("ARGV")).replace(argvArray);
  } else {
    runtime.getObject().setConstantQuiet("ARGV", argvArray);
    runtime.getGlobalVariables().define("$*", new ValueAccessor(argvArray), GLOBAL);
  }
}

相关文章

微信公众号

最新文章

更多

RubyClass类方法