コード例 #1
0
ファイル: ConstNode.java プロジェクト: GUI/jruby
 @Override
 public RubyString definition(
     Ruby runtime, ThreadContext context, IRubyObject self, Block aBlock) {
   return context.getConstantDefined(name)
       ? runtime.getDefinedMessage(DefinedMessage.CONSTANT)
       : null;
 }
コード例 #2
0
ファイル: OrNode.java プロジェクト: RB-DPR/RB-DPR
 @Override
 public RubyString definition(
     Ruby runtime, ThreadContext context, IRubyObject self, Block aBlock) {
   if (!context.runtime.is1_9()) {
     return super.definition(runtime, context, self, aBlock);
   } else {
     return runtime.getDefinedMessage(DefinedMessage.EXPRESSION);
   }
 }
コード例 #3
0
ファイル: NthRefNode.java プロジェクト: xb/jruby
  @Override
  public RubyString definition(
      Ruby runtime, ThreadContext context, IRubyObject self, Block aBlock) {
    IRubyObject backref = context.getBackRef();
    if (backref instanceof RubyMatchData) {
      if (!((RubyMatchData) backref).group(matchNumber).isNil()) {
        return runtime.getDefinedMessage(DefinedMessage.GLOBAL_VARIABLE);
      }
    }

    return null;
  }
コード例 #4
0
  @Override
  public RubyString definition(
      Ruby runtime, ThreadContext context, IRubyObject self, Block aBlock) {
    IRubyObject lastError = context.getErrorInfo();
    try {
      if (Helpers.isModuleAndHasConstant(
          leftNode.interpret(runtime, context, self, aBlock), name)) {
        return runtime.getDefinedMessage(DefinedMessage.CONSTANT);
      }
    } catch (JumpException e) {
      // replace lastError
      context.setErrorInfo(lastError);
    }

    return null;
  }
コード例 #5
0
ファイル: LocalVarNode.java プロジェクト: bruceadams/jruby
 @Override
 public RubyString definition(
     Ruby runtime, ThreadContext context, IRubyObject self, Block aBlock) {
   return runtime.getDefinedMessage(DefinedMessage.LOCAL_VARIABLE);
 }