class FFI::Enums
def <<(enum)
def <<(enum) @all_enums << enum @tagged_enums[enum.tag] = enum unless enum.tag.nil? @symbol_map.merge!(enum.symbol_map) end
def __map_symbol(symbol)
def __map_symbol(symbol) @symbol_map[symbol] end
def find(query)
def find(query) if @tagged_enums.has_key?(query) @tagged_enums[query] else @all_enums.detect { |enum| enum.symbols.include?(query) } end end
def initialize
def initialize @all_enums = Array.new @tagged_enums = Hash.new @symbol_map = Hash.new end