class Purview::Indices::Base

Attributes

columns[R]
opts[R]
table[R]

Public Class Methods

new(columns, opts={}) click to toggle source
# File lib/purview/indices/base.rb, line 6
def initialize(columns, opts={})
  @columns = columns
  @opts = opts
  @table = table_opt
end

Public Instance Methods

eql?(other) click to toggle source
# File lib/purview/indices/base.rb, line 12
def eql?(other)
  self.class == other.class &&
    columns == other.columns &&
    unique == other.unique
end
hash() click to toggle source
# File lib/purview/indices/base.rb, line 18
def hash
  columns.hash + unique.hash
end
table=(value) click to toggle source
# File lib/purview/indices/base.rb, line 22
def table=(value)
  raise Purview::Exceptions::TableAlreadyAssignedForIndex.new(self) if table
  @table = value
end
unique() click to toggle source
# File lib/purview/indices/base.rb, line 27
def unique
  opts[:unique]
end
unique?() click to toggle source
# File lib/purview/indices/base.rb, line 31
def unique?
  !!unique
end

Private Instance Methods

table_opt() click to toggle source
# File lib/purview/indices/base.rb, line 39
def table_opt
  opts[:table]
end