本文整理了Java中org.jruby.RubyClass.setMarshal
方法的一些代码示例,展示了RubyClass.setMarshal
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RubyClass.setMarshal
方法的具体详情如下:
包路径:org.jruby.RubyClass
类名称:RubyClass
方法名:setMarshal
暂无
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
public static RubyClass createSystemCallErrorClass(Ruby runtime, RubyClass standardError) {
RubyClass exceptionClass = runtime.defineClass("SystemCallError", standardError, SYSTEM_CALL_ERROR_ALLOCATOR);
exceptionClass.setMarshal(SYSTEM_CALL_ERROR_MARSHAL);
exceptionClass.defineAnnotatedMethods(RubySystemCallError.class);
return exceptionClass;
}
代码示例来源:origin: org.jruby/jruby-complete
public static RubyClass define(Ruby runtime, RubyClass standardError) {
RubyClass exceptionClass = runtime.defineClass("SystemCallError", standardError, SYSTEM_CALL_ERROR_ALLOCATOR);
exceptionClass.setMarshal(SYSTEM_CALL_ERROR_MARSHAL);
exceptionClass.defineAnnotatedMethods(RubySystemCallError.class);
return exceptionClass;
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
public static RubyClass createSystemCallErrorClass(Ruby runtime, RubyClass standardError) {
RubyClass exceptionClass = runtime.defineClass("SystemCallError", standardError, SYSTEM_CALL_ERROR_ALLOCATOR);
exceptionClass.setMarshal(SYSTEM_CALL_ERROR_MARSHAL);
exceptionClass.defineAnnotatedMethods(RubySystemCallError.class);
return exceptionClass;
}
代码示例来源:origin: org.jruby/jruby-core
public static RubyClass define(Ruby runtime, RubyClass standardError) {
RubyClass exceptionClass = runtime.defineClass("SystemCallError", standardError, SYSTEM_CALL_ERROR_ALLOCATOR);
exceptionClass.setMarshal(SYSTEM_CALL_ERROR_MARSHAL);
exceptionClass.defineAnnotatedMethods(RubySystemCallError.class);
return exceptionClass;
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
public static RubyClass createExceptionClass(Ruby runtime) {
RubyClass exceptionClass = runtime.defineClass("Exception", runtime.getObject(), EXCEPTION_ALLOCATOR);
runtime.setException(exceptionClass);
exceptionClass.index = ClassIndex.EXCEPTION;
exceptionClass.setReifiedClass(RubyException.class);
exceptionClass.setMarshal(EXCEPTION_MARSHAL);
exceptionClass.defineAnnotatedMethods(RubyException.class);
return exceptionClass;
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
public static RubyClass createExceptionClass(Ruby runtime) {
RubyClass exceptionClass = runtime.defineClass("Exception", runtime.getObject(), EXCEPTION_ALLOCATOR);
runtime.setException(exceptionClass);
exceptionClass.index = ClassIndex.EXCEPTION;
exceptionClass.setReifiedClass(RubyException.class);
exceptionClass.setMarshal(EXCEPTION_MARSHAL);
exceptionClass.defineAnnotatedMethods(RubyException.class);
return exceptionClass;
}
代码示例来源:origin: org.jruby/jruby-core
public static RubyClass createExceptionClass(Ruby runtime) {
RubyClass exceptionClass = runtime.defineClass("Exception", runtime.getObject(), EXCEPTION_ALLOCATOR);
runtime.setException(exceptionClass);
exceptionClass.setClassIndex(ClassIndex.EXCEPTION);
exceptionClass.setReifiedClass(RubyException.class);
exceptionClass.setMarshal(EXCEPTION_MARSHAL);
exceptionClass.defineAnnotatedMethods(RubyException.class);
return exceptionClass;
}
代码示例来源:origin: org.jruby/jruby-complete
public static RubyClass createExceptionClass(Ruby runtime) {
RubyClass exceptionClass = runtime.defineClass("Exception", runtime.getObject(), EXCEPTION_ALLOCATOR);
runtime.setException(exceptionClass);
exceptionClass.setClassIndex(ClassIndex.EXCEPTION);
exceptionClass.setReifiedClass(RubyException.class);
exceptionClass.setMarshal(EXCEPTION_MARSHAL);
exceptionClass.defineAnnotatedMethods(RubyException.class);
return exceptionClass;
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
public static RubyClass createRangeClass(Ruby runtime) {
RubyClass result = runtime.defineClass("Range", runtime.getObject(), RANGE_ALLOCATOR);
runtime.setRange(result);
result.index = ClassIndex.RANGE;
result.setReifiedClass(RubyRange.class);
result.kindOf = new RubyModule.JavaClassKindOf(RubyRange.class);
result.setMarshal(RANGE_MARSHAL);
result.includeModule(runtime.getEnumerable());
result.defineAnnotatedMethods(RubyRange.class);
return result;
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
public static RubyClass createRangeClass(Ruby runtime) {
RubyClass result = runtime.defineClass("Range", runtime.getObject(), RANGE_ALLOCATOR);
runtime.setRange(result);
result.index = ClassIndex.RANGE;
result.setReifiedClass(RubyRange.class);
result.kindOf = new RubyModule.JavaClassKindOf(RubyRange.class);
result.setMarshal(RANGE_MARSHAL);
result.includeModule(runtime.getEnumerable());
result.defineAnnotatedMethods(RubyRange.class);
return result;
}
代码示例来源:origin: org.jruby/jruby-complete
public static RubyClass createRangeClass(Ruby runtime) {
RubyClass result = runtime.defineClass("Range", runtime.getObject(), RANGE_ALLOCATOR);
runtime.setRange(result);
result.setClassIndex(ClassIndex.RANGE);
result.setReifiedClass(RubyRange.class);
result.kindOf = new RubyModule.JavaClassKindOf(RubyRange.class);
result.setMarshal(RANGE_MARSHAL);
result.includeModule(runtime.getEnumerable());
result.defineAnnotatedMethods(RubyRange.class);
return result;
}
代码示例来源:origin: org.jruby/jruby-core
public static RubyClass createRangeClass(Ruby runtime) {
RubyClass result = runtime.defineClass("Range", runtime.getObject(), RANGE_ALLOCATOR);
runtime.setRange(result);
result.setClassIndex(ClassIndex.RANGE);
result.setReifiedClass(RubyRange.class);
result.kindOf = new RubyModule.JavaClassKindOf(RubyRange.class);
result.setMarshal(RANGE_MARSHAL);
result.includeModule(runtime.getEnumerable());
result.defineAnnotatedMethods(RubyRange.class);
return result;
}
代码示例来源:origin: org.jruby/jruby-complete
static RubyClass createSetClass(final Ruby runtime) {
RubyClass Set = runtime.defineClass("Set", runtime.getObject(), ALLOCATOR);
Set.setReifiedClass(RubySet.class);
Set.includeModule(runtime.getEnumerable());
Set.defineAnnotatedMethods(RubySet.class);
Set.setMarshal(new SetMarshal(Set.getMarshal()));
runtime.getLoadService().require("jruby/set.rb");
return Set;
}
代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby
public static RubyClass createRationalClass(Ruby runtime) {
RubyClass rationalc = runtime.defineClass("Rational", runtime.getNumeric(), RATIONAL_ALLOCATOR);
runtime.setRational(rationalc);
rationalc.index = ClassIndex.RATIONAL;
rationalc.setReifiedClass(RubyRational.class);
rationalc.kindOf = new RubyModule.JavaClassKindOf(RubyRational.class);
rationalc.setMarshal(RATIONAL_MARSHAL);
rationalc.defineAnnotatedMethods(RubyRational.class);
rationalc.getSingletonClass().undefineMethod("allocate");
rationalc.getSingletonClass().undefineMethod("new");
return rationalc;
}
代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby
public static RubyClass createRationalClass(Ruby runtime) {
RubyClass rationalc = runtime.defineClass("Rational", runtime.getNumeric(), RATIONAL_ALLOCATOR);
runtime.setRational(rationalc);
rationalc.index = ClassIndex.RATIONAL;
rationalc.setReifiedClass(RubyRational.class);
rationalc.kindOf = new RubyModule.JavaClassKindOf(RubyRational.class);
rationalc.setMarshal(RATIONAL_MARSHAL);
rationalc.defineAnnotatedMethods(RubyRational.class);
rationalc.getSingletonClass().undefineMethod("allocate");
rationalc.getSingletonClass().undefineMethod("new");
return rationalc;
}
代码示例来源:origin: org.jruby/jruby-core
static RubyClass createSetClass(final Ruby runtime) {
RubyClass Set = runtime.defineClass("Set", runtime.getObject(), ALLOCATOR);
Set.setReifiedClass(RubySet.class);
Set.includeModule(runtime.getEnumerable());
Set.defineAnnotatedMethods(RubySet.class);
Set.setMarshal(new SetMarshal(Set.getMarshal()));
runtime.getLoadService().require("jruby/set.rb");
return Set;
}
代码示例来源:origin: org.jruby/jruby-core
public static RubyClass createRationalClass(Ruby runtime) {
RubyClass rationalc = runtime.defineClass("Rational", runtime.getNumeric(), RATIONAL_ALLOCATOR);
runtime.setRational(rationalc);
rationalc.setClassIndex(ClassIndex.RATIONAL);
rationalc.setReifiedClass(RubyRational.class);
rationalc.kindOf = new RubyModule.JavaClassKindOf(RubyRational.class);
rationalc.setMarshal(RATIONAL_MARSHAL);
rationalc.defineAnnotatedMethods(RubyRational.class);
rationalc.getSingletonClass().undefineMethod("allocate");
rationalc.getSingletonClass().undefineMethod("new");
return rationalc;
}
代码示例来源:origin: org.jruby/jruby-complete
public static RubyClass createRationalClass(Ruby runtime) {
RubyClass rationalc = runtime.defineClass("Rational", runtime.getNumeric(), RATIONAL_ALLOCATOR);
runtime.setRational(rationalc);
rationalc.setClassIndex(ClassIndex.RATIONAL);
rationalc.setReifiedClass(RubyRational.class);
rationalc.kindOf = new RubyModule.JavaClassKindOf(RubyRational.class);
rationalc.setMarshal(RATIONAL_MARSHAL);
rationalc.defineAnnotatedMethods(RubyRational.class);
rationalc.getSingletonClass().undefineMethod("allocate");
rationalc.getSingletonClass().undefineMethod("new");
return rationalc;
}
代码示例来源:origin: org.jruby/jruby-core
public static RubyClass createThreadClass(Ruby runtime) {
// FIXME: In order for Thread to play well with the standard 'new' behavior,
// it must provide an allocator that can create empty object instances which
// initialize then fills with appropriate data.
RubyClass threadClass = runtime.defineClass("Thread", runtime.getObject(), ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR);
runtime.setThread(threadClass);
threadClass.setClassIndex(ClassIndex.THREAD);
threadClass.setReifiedClass(RubyThread.class);
threadClass.defineAnnotatedMethods(RubyThread.class);
RubyThread rubyThread = new RubyThread(runtime, threadClass);
// TODO: need to isolate the "current" thread from class creation
rubyThread.threadImpl = new NativeThread(rubyThread, Thread.currentThread());
runtime.getThreadService().setMainThread(Thread.currentThread(), rubyThread);
// set to default thread group
runtime.getDefaultThreadGroup().addDirectly(rubyThread);
threadClass.setMarshal(ObjectMarshal.NOT_MARSHALABLE_MARSHAL);
// set up Thread::Backtrace::Location class
RubyClass backtrace = threadClass.defineClassUnder("Backtrace", runtime.getObject(), ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR);
RubyClass location = backtrace.defineClassUnder("Location", runtime.getObject(), ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR);
location.defineAnnotatedMethods(Location.class);
runtime.setLocation(location);
return threadClass;
}
代码示例来源:origin: org.jruby/jruby-complete
public static RubyClass createThreadClass(Ruby runtime) {
// FIXME: In order for Thread to play well with the standard 'new' behavior,
// it must provide an allocator that can create empty object instances which
// initialize then fills with appropriate data.
RubyClass threadClass = runtime.defineClass("Thread", runtime.getObject(), ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR);
runtime.setThread(threadClass);
threadClass.setClassIndex(ClassIndex.THREAD);
threadClass.setReifiedClass(RubyThread.class);
threadClass.defineAnnotatedMethods(RubyThread.class);
RubyThread rubyThread = new RubyThread(runtime, threadClass);
// TODO: need to isolate the "current" thread from class creation
rubyThread.threadImpl = new NativeThread(rubyThread, Thread.currentThread());
runtime.getThreadService().setMainThread(Thread.currentThread(), rubyThread);
// set to default thread group
runtime.getDefaultThreadGroup().addDirectly(rubyThread);
threadClass.setMarshal(ObjectMarshal.NOT_MARSHALABLE_MARSHAL);
// set up Thread::Backtrace::Location class
RubyClass backtrace = threadClass.defineClassUnder("Backtrace", runtime.getObject(), ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR);
RubyClass location = backtrace.defineClassUnder("Location", runtime.getObject(), ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR);
location.defineAnnotatedMethods(Location.class);
runtime.setLocation(location);
return threadClass;
}
内容来源于网络,如有侵权,请联系作者删除!