public static RubyClass createArrayJavaProxyCreator(ThreadContext context) { Ruby runtime = context.runtime; RubyClass arrayJavaProxyCreator = runtime.defineClass("ArrayJavaProxyCreator", runtime.getObject(), ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR); arrayJavaProxyCreator.defineAnnotatedMethods(ArrayJavaProxyCreator.class); return arrayJavaProxyCreator; }
static RubyClass createDateTimeClass(Ruby runtime, RubyClass Date) { RubyClass DateTime = runtime.defineClass("DateTime", Date, ALLOCATOR); DateTime.setReifiedClass(RubyDateTime.class); DateTime.defineAnnotatedMethods(RubyDateTime.class); return DateTime; }
public static void setup(Ruby runtime) { RubyClass cMutex = runtime.defineClass("Mutex", runtime.getObject(), new ObjectAllocator() { public IRubyObject allocate(Ruby runtime, RubyClass klass) { return new Mutex(runtime, klass); } }); cMutex.setReifiedClass(Mutex.class); cMutex.defineAnnotatedMethods(Mutex.class); }
public static RubyClass createProcClass(Ruby runtime) { RubyClass procClass = runtime.defineClass("Proc", runtime.getObject(), ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR); runtime.setProc(procClass); procClass.index = ClassIndex.PROC; procClass.setReifiedClass(RubyProc.class); procClass.defineAnnotatedMethods(RubyProc.class); return procClass; }
public static RubyClass createArrayJavaProxyCreator(ThreadContext context) { Ruby runtime = context.runtime; RubyClass arrayJavaProxyCreator = runtime.defineClass("ArrayJavaProxyCreator", runtime.getObject(), ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR); arrayJavaProxyCreator.defineAnnotatedMethods(ArrayJavaProxyCreator.class); return arrayJavaProxyCreator; }
static RubyClass define(Ruby runtime, RubyClass superClass) { RubyClass KeyError = runtime.defineClass("KeyError", superClass, (runtime1, klass) -> new RubyKeyError(runtime1, klass)); KeyError.defineAnnotatedMethods(RubyKeyError.class); KeyError.setReifiedClass(RubyKeyError.class); return KeyError; }
public static void setup(Ruby runtime) { RubyClass cConditionVariable = runtime.defineClass("ConditionVariable", runtime.getObject(), new ObjectAllocator() { public IRubyObject allocate(Ruby runtime, RubyClass klass) { return new ConditionVariable(runtime, klass); } }); cConditionVariable.setReifiedClass(ConditionVariable.class); cConditionVariable.defineAnnotatedMethods(ConditionVariable.class); }
public void load(final Ruby runtime, boolean wrap) { RubyClass cFiber = runtime.defineClass("Fiber", runtime.getObject(), new ObjectAllocator() { public IRubyObject allocate(Ruby runtime, RubyClass klazz) { return new ThreadFiber(runtime, klazz); } }); cFiber.defineAnnotatedMethods(ThreadFiber.class); } }
public static RubyClass createBignumClass(Ruby runtime) { RubyClass bignum = runtime.defineClass("Bignum", runtime.getInteger(), ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR); runtime.setBignum(bignum); bignum.index = ClassIndex.BIGNUM; bignum.setReifiedClass(RubyBignum.class); bignum.defineAnnotatedMethods(RubyBignum.class); return bignum; }
public static void setup(Ruby runtime) { RubyClass cConditionVariable = runtime.defineClass("ConditionVariable", runtime.getObject(), new ObjectAllocator() { public IRubyObject allocate(Ruby runtime, RubyClass klass) { return new ConditionVariable(runtime, klass); } }); cConditionVariable.setReifiedClass(ConditionVariable.class); cConditionVariable.defineAnnotatedMethods(ConditionVariable.class); }
public static void createTracePointClass(Ruby runtime) { RubyClass tracePoint = runtime.defineClass("TracePoint", runtime.getObject(), new ObjectAllocator() { @Override public IRubyObject allocate(Ruby runtime, RubyClass klazz) { return new TracePoint(runtime, klazz); } }); tracePoint.defineAnnotatedMethods(TracePoint.class); }
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; }
public static void setup(Ruby runtime) { RubyClass cQueue = runtime.defineClass("Queue", runtime.getObject(), new ObjectAllocator() { public IRubyObject allocate(Ruby runtime, RubyClass klass) { return new Queue(runtime, klass); } }); cQueue.setReifiedClass(Queue.class); cQueue.defineAnnotatedMethods(Queue.class); }
public static RubyClass createJRubyObjectInputStream(Ruby runtime) { RubyClass result = runtime.defineClass("JRubyObjectInputStream",runtime.getObject(), ALLOCATOR); result.defineAnnotatedMethods(JRubyObjectInputStream.class); return result; }
public static void setup(Ruby runtime) { RubyClass cQueue = runtime.defineClass("Queue", runtime.getObject(), new ObjectAllocator() { public IRubyObject allocate(Ruby runtime, RubyClass klass) { return new Queue(runtime, klass); } }); cQueue.setReifiedClass(Queue.class); cQueue.defineAnnotatedMethods(Queue.class); }
public static RubyClass createClass(Ruby runtime, RubyClass baseClass) { RubyClass exceptionClass = runtime.defineClass(CLASS_NAME, baseClass, NATIVE_EXCEPTION_ALLOCATOR); runtime.getObject().deprecateConstant(runtime, CLASS_NAME); exceptionClass.defineAnnotatedMethods(NativeException.class); return exceptionClass; }
/** Create the RubyMethod class and add it to the Ruby runtime. * */ public static RubyClass createMethodClass(Ruby runtime) { // TODO: NOT_ALLOCATABLE_ALLOCATOR is probably ok here. Confirm. JRUBY-415 RubyClass methodClass = runtime.defineClass("Method", runtime.getObject(), ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR); runtime.setMethod(methodClass); methodClass.index = ClassIndex.METHOD; methodClass.setReifiedClass(RubyMethod.class); methodClass.defineAnnotatedMethods(RubyMethod.class); return methodClass; }
public static RubyClass createInterfaceJavaProxy(ThreadContext context) { final Ruby runtime = context.runtime; RubyClass InterfaceJavaProxy = runtime.defineClass( "InterfaceJavaProxy", runtime.getJavaSupport().getJavaProxyClass(), ALLOCATOR ); RubyClass JavaInterfaceExtended = runtime.defineClass( "JavaInterfaceExtender", runtime.getObject(), runtime.getObject().getAllocator() ); JavaInterfaceExtended.defineAnnotatedMethods(JavaInterfaceExtender.class); return InterfaceJavaProxy; }
/** Create the RubyMethod class and add it to the Ruby runtime. * */ public static RubyClass createMethodClass(Ruby runtime) { // TODO: NOT_ALLOCATABLE_ALLOCATOR is probably ok here. Confirm. JRUBY-415 RubyClass methodClass = runtime.defineClass("Method", runtime.getObject(), ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR); runtime.setMethod(methodClass); methodClass.index = ClassIndex.METHOD; methodClass.setReifiedClass(RubyMethod.class); methodClass.defineAnnotatedMethods(RubyMethod.class); return methodClass; }
static void createTCPSocket(Ruby runtime) { RubyClass rb_cTCPSocket = runtime.defineClass("TCPSocket", runtime.getClass("IPSocket"), TCPSOCKET_ALLOCATOR); rb_cTCPSocket.defineAnnotatedMethods(RubyTCPSocket.class); runtime.getObject().setConstant("TCPsocket",rb_cTCPSocket); }