Class DL::Packer
In: dl/lib/dl/pack.rb
Parent: Object

Methods

[]   new   pack   size   unpack  

Included Modules

PackInfo

Public Class methods

[Source]

# File dl/lib/dl/pack.rb, line 111
    def Packer.[](*types)
      Packer.new(types)
    end

[Source]

# File dl/lib/dl/pack.rb, line 115
    def initialize(types)
      parse_types(types)
    end

Public Instance methods

[Source]

# File dl/lib/dl/pack.rb, line 123
    def pack(ary)
      case SIZEOF_VOIDP
      when SIZEOF_LONG
        ary.pack(@template)
      when SIZEOF_LONG
        ary.pack(@template)
      else
        raise(RuntimeError, "sizeof(void*)?")
      end
    end

[Source]

# File dl/lib/dl/pack.rb, line 119
    def size()
      @size
    end

[Source]

# File dl/lib/dl/pack.rb, line 134
    def unpack(ary)
      case SIZEOF_VOIDP
      when SIZEOF_LONG
        ary.join().unpack(@template)
      when SIZEOF_LONG_LONG
        ary.join().unpack(@template)
      else
        raise(RuntimeError, "sizeof(void*)?")
      end
    end

[Validate]