Object
This registry contains a register of name -> class mappings.
Numerics (integers and floating point numbers) have an endian property as part of their name (e.g. int32be, float_le). The lookup can either be on the full name, or on the shortened name plus endian (e.g. “int32”, :big)
Names are stored in under_score_style, not camelCase.
# File lib/bindata/registry.rb, line 31 def lookup(name, endian = nil) key = normalize_name(name, endian) @registry[key] || raise(UnRegisteredTypeError, name.to_s) end
# File lib/bindata/registry.rb, line 36 def normalize_name(name, endian = nil) name = underscore_name(name) return name if is_registered?(name) name = name_with_endian(name, endian) return name if is_registered?(name) name end
# File lib/bindata/registry.rb, line 18 def register(name, class_to_register) return if class_to_register.nil? formatted_name = underscore_name(name) warn_if_name_is_already_registered(formatted_name, class_to_register) @registry[formatted_name] = class_to_register end
Generated with the Darkfish Rdoc Generator 2.