Sha256: 8358b8afc2fb3db84a3a7a35272c742a41195041416b8f6cce4bead4248197b2

Contents?: true

Size: 605 Bytes

Versions: 2

Compression:

Stored size: 605 Bytes

Contents

require 'ffi/bit_masks/bit_mask'
require 'ffi/bit_masks/version'

module FFI
  #
  # Adds bitmask types to FFI libraries.
  #
  module BitMasks
    #
    # Defines a new bitmask.
    #
    # @param [Symbol] name
    #   The name of the bitmask.
    #
    # @param [Hash{Symbol => Integer}] flags
    #   The flags and their masks.
    #
    # @param [Symbol] type
    #   The underlying type.
    #
    # @return [BitMask]
    #   The new bitmask.
    #
    def bit_mask(name,flags,type=:uint)
      bit_mask = BitMask.new(flags,type)

      typedef(bit_mask,name)
      return bit_mask
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
ffi-bit_masks-0.1.1 lib/ffi/bit_masks.rb
ffi-bit_masks-0.1.0 lib/ffi/bit_masks.rb