Sha256: 3c47510664d1202c1951a3b6b389c232f1e07a7f414fa717d4c4de5be18c3644

Contents?: true

Size: 562 Bytes

Versions: 1

Compression:

Stored size: 562 Bytes

Contents

require 'fiddle'

module FMOD
  module Core
    class Structure < Fiddle::CStructEntity

      include Fiddle
      include FMOD::Core

      def initialize(address, types, members)
        address = Pointer[address] if address.is_a?(String)
        address ||= Fiddle.malloc(self.class.size(types)).to_i
        super(address, types)
        assign_names members
      end

      def inspect
        values = @members.map { |sym| "#{sym}=#{self[sym]}"}.join(', ')
        super.sub(/free=0x(.)*/, values << '>')
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
fmod-0.9.0 lib/fmod/core/structure.rb