class BinData::SanitizedFields

def [](idx)

def [](idx)
  @fields[idx]
end

def add_field(type, name, params)

def add_field(type, name, params)
  name = nil if name == ""
  @fields << SanitizedField.new(name, type, params, @hints)
end

def all_field_names_blank?

def all_field_names_blank?
  @fields.all? { |f| f.name.nil? }
end

def any_field_has_parameter?(parameter)

def any_field_has_parameter?(parameter)
  @fields.any? { |f| f.has_parameter?(parameter) }
end

def each(&block)

def each(&block)
  @fields.each(&block)
end

def empty?

def empty?
  @fields.empty?
end

def field_name?(name)

def field_name?(name)
  @fields.detect { |f| f.name_as_sym == name.to_sym }
end

def field_names

def field_names
  @fields.collect(&:name_as_sym)
end

def initialize(hints, base_fields = nil)

def initialize(hints, base_fields = nil)
  @hints = hints
  if base_fields
    @fields = base_fields.raw_fields
  else
    @fields = []
  end
end

def length

def length
  @fields.length
end

def no_field_names_blank?

def no_field_names_blank?
  @fields.all? { |f| f.name != nil }
end

def raw_fields

def raw_fields
  @fields.dup
end