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

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

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

RubyClass.getVariableAccessorForWrite介绍

暂无

代码示例

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

protected JavaObject(Ruby runtime, RubyClass rubyClass, Object value) {
  super(runtime, rubyClass);
  objectAccessor = rubyClass.getVariableAccessorForWrite("__wrap_struct__");
  dataWrapStruct(value);
}

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

private VariableAccessor verifyAccessor(RubyClass cls) {
  VariableAccessor localAccessor = accessor;
  if (localAccessor.getClassId() != cls.id) {
    localAccessor = cls.getVariableAccessorForWrite(variableName);
    accessor = localAccessor;
  }
  return localAccessor;
}

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

private VariableAccessor verifyAccessor(RubyClass cls) {
  VariableAccessor localAccessor = accessor;
  if (localAccessor.getClassId() != cls.id) {
    localAccessor = cls.getVariableAccessorForWrite(variableName);
    accessor = localAccessor;
  }
  return localAccessor;
}

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

protected JavaObject(Ruby runtime, RubyClass rubyClass, Object value) {
  super(runtime, rubyClass);
  objectAccessor = rubyClass.getVariableAccessorForWrite("__wrap_struct__");
  dataWrapStruct(value);
}

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

private VariableAccessor verifyAccessor(RubyClass cls) {
  VariableAccessor localAccessor = accessor;
  if (localAccessor.getClassId() != cls.id) {
    localAccessor = cls.getVariableAccessorForWrite(variableName);
    accessor = localAccessor;
  }
  return localAccessor;
}

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

/**
 * Store a value in the variable store under the specific name.
 */
protected Object variableTableStore(String name, Object value) {
  metaClass.getVariableAccessorForWrite(name).set(this, value);
  return value;
}

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

private VariableAccessor verifyAccessor(RubyClass cls) {
    VariableAccessor localAccessor = accessor;
    if (localAccessor.getClassId() != cls.hashCode()) {
      localAccessor = cls.getVariableAccessorForWrite(name);
      accessor = localAccessor;
    }
    return localAccessor;
  }
}

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

private VariableAccessor verifyAccessor(RubyClass cls) {
    VariableAccessor localAccessor = accessor;
    if (localAccessor.getClassId() != cls.hashCode()) {
      localAccessor = cls.getVariableAccessorForWrite(name);
      accessor = localAccessor;
    }
    return localAccessor;
  }
}

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

public VariableAccessor getAccessor(IRubyObject o) {
  RubyClass cls = o.getMetaClass().getRealClass();
  VariableAccessor localAccessor = accessor;
  if (localAccessor.getClassId() != cls.hashCode()) {
    localAccessor = cls.getVariableAccessorForWrite(getId());
    accessor = localAccessor;
  }
  return localAccessor;
}

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

public final IRubyObject setVariable(int index, String name, IRubyObject object, IRubyObject value) {
  VariableAccessor variableAccessor = variableWriters[index];
  RubyClass cls = object.getMetaClass().getRealClass();
  if (variableAccessor.getClassId() != cls.hashCode()) {
    variableWriters[index] = variableAccessor = cls.getVariableAccessorForWrite(name);
  }
  variableAccessor.set(object, value);
  return value;
}

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

public final IRubyObject setVariable(int index, String name, IRubyObject object, IRubyObject value) {
  VariableAccessor variableAccessor = variableWriters[index];
  RubyClass cls = object.getMetaClass().getRealClass();
  if (variableAccessor.getClassId() != cls.hashCode()) {
    variableWriters[index] = variableAccessor = cls.getVariableAccessorForWrite(name);
  }
  variableAccessor.set(object, value);
  return value;
}

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

public final IRubyObject setVariable(IRubyObject object, IRubyObject value) {
  VariableAccessor variableAccessor = accessor;
  RubyClass cls = object.getMetaClass().getRealClass();
  if (variableAccessor.getClassId() != cls.hashCode()) {
    accessor = variableAccessor = cls.getVariableAccessorForWrite(name);
  }
  variableAccessor.set(object, value);
  return value;
}

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

public void ivarSetFail(IRubyObject self, IRubyObject value) {
  VariableAccessor variableAccessor = accessor;
  RubyClass cls = self.getMetaClass().getRealClass();
  if (variableAccessor.getClassId() != cls.hashCode()) {
    accessor = variableAccessor = cls.getVariableAccessorForWrite(name);
  }
  variableAccessor.set(self, value);
}

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

public void ivarSetFail(IRubyObject self, IRubyObject value) {
  VariableAccessor variableAccessor = accessor;
  RubyClass cls = self.getMetaClass().getRealClass();
  if (variableAccessor.getClassId() != cls.hashCode()) {
    accessor = variableAccessor = cls.getVariableAccessorForWrite(name);
  }
  variableAccessor.set(self, value);
}

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

public VariableAccessor getAccessor(IRubyObject o) {
  RubyClass cls = o.getMetaClass().getRealClass();
  VariableAccessor localAccessor = accessor;
  if (localAccessor.getClassId() != cls.hashCode()) {
    localAccessor = cls.getVariableAccessorForWrite(getId());
    accessor = localAccessor;
  }
  return localAccessor;
}

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

public final IRubyObject setVariable(IRubyObject object, IRubyObject value) {
  VariableAccessor variableAccessor = accessor;
  RubyClass cls = object.getMetaClass().getRealClass();
  if (variableAccessor.getClassId() != cls.hashCode()) {
    accessor = variableAccessor = cls.getVariableAccessorForWrite(name);
  }
  variableAccessor.set(object, value);
  return value;
}

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

public final IRubyObject setVariable(int index, String name, IRubyObject object, IRubyObject value) {
  VariableAccessor variableAccessor = variableWriters[index];
  RubyClass cls = object.getMetaClass().getRealClass();
  if (variableAccessor.getClassId() != cls.hashCode()) {
    variableWriters[index] = variableAccessor = cls.getVariableAccessorForWrite(name);
  }
  variableAccessor.set(object, value);
  return value;
}

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

public final IRubyObject setVariable(int index, String name, IRubyObject object, IRubyObject value) {
  VariableAccessor variableAccessor = variableWriters[index];
  RubyClass cls = object.getMetaClass().getRealClass();
  if (variableAccessor.getClassId() != cls.hashCode()) {
    variableWriters[index] = variableAccessor = cls.getVariableAccessorForWrite(name);
  }
  variableAccessor.set(object, value);
  return value;
}

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

@Override
public Object interpret(ThreadContext context, DynamicScope currDynScope, IRubyObject self, Object[] temp, Block block) {
  IRubyObject object = (IRubyObject) getTarget().retrieve(context, self, currDynScope, temp);
  // FIXME: Why getRealClass? Document
  RubyClass clazz = object.getMetaClass().getRealClass();
  // FIXME: Should add this as a field for instruction
  clazz.getVariableAccessorForWrite(getRef()).set(object,
      getValue().retrieve(context, self, currDynScope, temp));
  return null;
}

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

@Override
public Object interpret(ThreadContext context, DynamicScope currDynScope, IRubyObject self, Object[] temp, Block block) {
  IRubyObject object = (IRubyObject) getTarget().retrieve(context, self, currDynScope, temp);
  // FIXME: Why getRealClass? Document
  RubyClass clazz = object.getMetaClass().getRealClass();
  // FIXME: Should add this as a field for instruction
  clazz.getVariableAccessorForWrite(getRef()).set(object,
      getValue().retrieve(context, self, currDynScope, temp));
  return null;
}

相关文章

微信公众号

最新文章

更多

RubyClass类方法