Class Pointer.NilToPointerMethod

java.lang.Object
org.jruby.internal.runtime.methods.DynamicMethod
org.jruby.ext.ffi.Pointer.NilToPointerMethod
Enclosing class:
Pointer

private static final class Pointer.NilToPointerMethod extends DynamicMethod
  • Field Details

    • ARITY

      private static final Arity ARITY
    • nullPointer

      private final Pointer nullPointer
  • Constructor Details

    • NilToPointerMethod

      private NilToPointerMethod(RubyModule implementationClass, Pointer nullPointer, String name)
  • Method Details

    • call

      public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, String name, IRubyObject[] args, Block block)
      Description copied from class: DynamicMethod
      The minimum 'call' method required for a dynamic method handle. Subclasses must implement this method, but may implement the other signatures to provide faster, non-boxing call paths. Typically subclasses will implement this method to check variable arity calls, then performing a specific-arity invocation to the appropriate method or performing variable-arity logic in-line.
      Specified by:
      call in class DynamicMethod
      Parameters:
      context - The thread context for the currently executing thread
      self - The 'self' or 'receiver' object to use for this call
      clazz - The Ruby class against which this method is binding
      name - The incoming name used to invoke this method
      args - The argument list to this invocation
      block - The block passed to this invocation
      Returns:
      The result of the call
    • call

      public IRubyObject call(ThreadContext context, IRubyObject self, RubyModule klazz, String name)
      Description copied from class: DynamicMethod
      Arity 0, no block
      Overrides:
      call in class DynamicMethod
    • dup

      public DynamicMethod dup()
      Description copied from class: DynamicMethod
      Duplicate this method, returning DynamicMethod referencing the same code and with the same attributes. It is not required that this method produce a new object if the semantics of the DynamicMethod subtype do not require such.
      Specified by:
      dup in class DynamicMethod
      Returns:
      An identical DynamicMethod object to the target.