Class: PGExaminer::Result::Index

Inherits:
Item
  • Object
show all
Defined in:
lib/pg_examiner/result/index.rb

Instance Attribute Summary

Attributes inherited from Item

#parent, #result, #row

Instance Method Summary collapse

Methods inherited from Item

#initialize, #inspect, #name, #oid

Methods inherited from Base

#==, #diff, #diffable_lists

Constructor Details

This class inherits a constructor from PGExaminer::Result::Item

Instance Method Details

#diffable_attrsObject



6
7
8
9
10
11
12
13
# File 'lib/pg_examiner/result/index.rb', line 6

def diffable_attrs
  {
    "name"         => "name",
    "filter"       => "filter expression",
    "indisunique"  => "index is unique",
    "indisprimary" => "index is primary key",
  }
end

#diffable_methodsObject



15
16
17
18
19
# File 'lib/pg_examiner/result/index.rb', line 15

def diffable_methods
  {
    "expression" => "expression"
  }
end

#expressionObject



21
22
23
# File 'lib/pg_examiner/result/index.rb', line 21

def expression
  @row['expression'] || @row['indkey'].split.map{|i| parent.columns.find{|c| c.row['attnum'] == i}}.map(&:name)
end