module Deterministic::EnumBuilder::DataType::Binary

TODO: this should probably be named Multary

Public Class Methods

new(*init) click to toggle source
# File lib/deterministic/enum.rb, line 50
def initialize(*init)
  raise ArgumentError, "Expected arguments for #{args}, got #{init}" unless (init.count == 1 && init[0].is_a?(Hash)) || init.count == args.count
  if init.count == 1 && init[0].is_a?(Hash)
    @value = Hash[args.zip(init[0].values)]
  else
    @value = Hash[args.zip(init)]
  end
end

Public Instance Methods

inspect() click to toggle source
# File lib/deterministic/enum.rb, line 59
def inspect
  params = value.map { |k, v| "#{k}: #{v.inspect}" }
  "#{name}(#{params.join(', ')})"
end