public static void createIfaddr(Ruby runtime) { RubyClass ifaddr = runtime.getClass("Socket").defineClassUnder( "Ifaddr", runtime.getData(), new ObjectAllocator() { public IRubyObject allocate(Ruby runtime, RubyClass klazz) { return new Ifaddr(runtime, klazz); } }); ifaddr.defineAnnotatedMethods(Ifaddr.class); }
public static RubyClass createConverterTypeClass(Ruby runtime, RubyModule ffiModule) { final RubyClass Type = ffiModule.getClass("Type"); RubyClass convClass = Type.defineClassUnder("Mapped", Type, ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR); convClass.defineAnnotatedMethods(MappedType.class); convClass.defineAnnotatedConstants(MappedType.class); return convClass; }
static RubyClass define(Ruby runtime, RubyClass NameError) { RubyClass Message = NameError.defineClassUnder("Message", runtime.getClass("Data"), ALLOCATOR); NameError.setConstantVisibility(runtime, "Message", true); Message.defineAnnotatedMethods(RubyNameErrorMessage.class); return Message; }
public static void createOption(Ruby runtime) { RubyClass addrinfo = runtime.getClass("Socket").defineClassUnder( "Option", runtime.getObject(), new ObjectAllocator() { public IRubyObject allocate(Ruby runtime, RubyClass klazz) { return new Option(runtime, klazz); } }); addrinfo.defineAnnotatedMethods(Option.class); }
public static void createIfaddr(Ruby runtime) { RubyClass ifaddr = runtime.getClass("Socket").defineClassUnder( "Ifaddr", runtime.getData(), new ObjectAllocator() { public IRubyObject allocate(Ruby runtime, RubyClass klazz) { return new Ifaddr(runtime, klazz); } }); ifaddr.defineAnnotatedMethods(Ifaddr.class); }
static RubyClass define(Ruby runtime, RubyClass NameError) { RubyClass Message = NameError.defineClassUnder("Message", runtime.getClass("Data"), ALLOCATOR); NameError.setConstantVisibility(runtime, "Message", true); Message.defineAnnotatedMethods(RubyNameErrorMessage.class); return Message; }
public static RubyClass createConverterTypeClass(Ruby runtime, RubyModule ffiModule) { RubyClass convClass = ffiModule.getClass("Type").defineClassUnder("Mapped", ffiModule.getClass("Type"), ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR); convClass.defineAnnotatedMethods(MappedType.class); convClass.defineAnnotatedConstants(MappedType.class); return convClass; }
public static void createOption(Ruby runtime) { RubyClass addrinfo = runtime.getClass("Socket").defineClassUnder( "Option", runtime.getObject(), new ObjectAllocator() { public IRubyObject allocate(Ruby runtime, RubyClass klazz) { return new Option(runtime, klazz); } }); addrinfo.defineAnnotatedMethods(Option.class); }
public static RubyClass createDynamicLibraryClass(Ruby runtime, RubyModule module) { RubyClass result = module.defineClassUnder("DynamicLibrary", runtime.getObject(), ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR); RubyClass symClass = result.defineClassUnder("Symbol", module.getClass("Pointer"), ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR); symClass.defineAnnotatedMethods(Symbol.class); result.defineAnnotatedMethods(DynamicLibrary.class); result.defineAnnotatedConstants(DynamicLibrary.class); return result; } private static final int getNativeLibraryFlags(IRubyObject rbFlags) {
public static void setup(Ruby runtime) { RubyClass cSizedQueue = runtime.getThread().defineClassUnder("SizedQueue", runtime.getClass("Queue"), new ObjectAllocator() { public IRubyObject allocate(Ruby runtime, RubyClass klass) { return new SizedQueue(runtime, klass); } }); cSizedQueue.setReifiedClass(SizedQueue.class); cSizedQueue.defineAnnotatedMethods(SizedQueue.class); runtime.getObject().setConstant("SizedQueue", cSizedQueue); }
public static RubyClass createFileStatClass(Ruby runtime) { // TODO: NOT_ALLOCATABLE_ALLOCATOR is probably ok here. Confirm. JRUBY-415 final RubyClass fileStatClass = runtime.getFile().defineClassUnder("Stat",runtime.getObject(), ALLOCATOR); runtime.setFileStat(fileStatClass); fileStatClass.includeModule(runtime.getModule("Comparable")); fileStatClass.defineAnnotatedMethods(RubyFileStat.class); return fileStatClass; }
public static RubyClass createDynamicLibraryClass(Ruby runtime, RubyModule module) { RubyClass result = module.defineClassUnder("DynamicLibrary", runtime.getObject(), ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR); RubyClass symClass = result.defineClassUnder("Symbol", module.getClass("Pointer"), ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR); symClass.defineAnnotatedMethods(Symbol.class); result.defineAnnotatedMethods(DynamicLibrary.class); result.defineAnnotatedConstants(DynamicLibrary.class); return result; } private static final int getNativeLibraryFlags(IRubyObject rbFlags) {
public static RubyClass createFileStatClass(Ruby runtime) { // TODO: NOT_ALLOCATABLE_ALLOCATOR is probably ok here. Confirm. JRUBY-415 final RubyClass fileStatClass = runtime.getFile().defineClassUnder("Stat",runtime.getObject(), ALLOCATOR); runtime.setFileStat(fileStatClass); fileStatClass.includeModule(runtime.getModule("Comparable")); fileStatClass.defineAnnotatedMethods(RubyFileStat.class); return fileStatClass; }
public static RubyClass createDynamicLibraryClass(Ruby runtime, RubyModule module) { RubyClass result = module.defineClassUnder("DynamicLibrary", runtime.getObject(), ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR); RubyClass symClass = result.defineClassUnder("Symbol", module.getClass("Pointer"), ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR); symClass.defineAnnotatedMethods(Symbol.class); result.defineAnnotatedMethods(DynamicLibrary.class); result.defineAnnotatedConstants(DynamicLibrary.class); return result; } private static final int getNativeLibraryFlags(IRubyObject rbFlags) {
public static void setup(Ruby runtime) { RubyClass cMutex = runtime.getThread().defineClassUnder("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); runtime.getObject().setConstant("Mutex", cMutex); }
public static void setup(Ruby runtime) { RubyClass cMutex = runtime.getThread().defineClassUnder("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); runtime.getObject().setConstant("Mutex", cMutex); }
public static void setup(Ruby runtime) { RubyClass cConditionVariable = runtime.getThread().defineClassUnder("ConditionVariable", runtime.getObject(), new ObjectAllocator() { public IRubyObject allocate(Ruby runtime, RubyClass klass) { return new ConditionVariable(runtime, klass); } }); cConditionVariable.undefineMethod("initialize_copy"); cConditionVariable.setReifiedClass(ConditionVariable.class); cConditionVariable.defineAnnotatedMethods(ConditionVariable.class); runtime.getObject().setConstant("ConditionVariable", cConditionVariable); }
public static void setup(Ruby runtime) { RubyClass cConditionVariable = runtime.getThread().defineClassUnder("ConditionVariable", runtime.getObject(), new ObjectAllocator() { public IRubyObject allocate(Ruby runtime, RubyClass klass) { return new ConditionVariable(runtime, klass); } }); cConditionVariable.undefineMethod("initialize_copy"); cConditionVariable.setReifiedClass(ConditionVariable.class); cConditionVariable.defineAnnotatedMethods(ConditionVariable.class); runtime.getObject().setConstant("ConditionVariable", cConditionVariable); }
public void load(Ruby runtime, boolean wrap) throws IOException { RubyKernel.require(runtime.getKernel(), runtime.newString("delegate"), Block.NULL_BLOCK); RubyClass delegatorClass = (RubyClass) runtime.getClassFromPath("Delegator"); RubyClass weakrefClass = runtime.defineClass("WeakRef", delegatorClass, WeakRef.WEAKREF_ALLOCATOR); weakrefClass.defineAnnotatedMethods(WeakRef.class); weakrefClass.defineClassUnder("RefError", runtime.getStandardError(), runtime.getStandardError().getAllocator()); } }
public void load(Ruby runtime, boolean wrap) throws IOException { RubyKernel.require(runtime.getKernel(), runtime.newString("delegate"), Block.NULL_BLOCK); RubyClass delegatorClass = (RubyClass) runtime.getClassFromPath("Delegator"); RubyClass weakrefClass = runtime.defineClass("WeakRef", delegatorClass, WeakRef.WEAKREF_ALLOCATOR); weakrefClass.defineAnnotatedMethods(WeakRef.class); weakrefClass.defineClassUnder("RefError", runtime.getStandardError(), runtime.getStandardError().getAllocator()); } }