Class: DL::Packer

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

### Methods

[] new pack size unpack

### Included Modules

PackInfo

### Public Class methods

[](*types)

[Source]

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

new(types)

[Source]

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

### Public Instance methods

pack(ary)

[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

size()

[Source]

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

unpack(ary)

[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]