Class: Anchor::Inference::ActiveRecord::Infer::Model

Inherits:
Base
  • Object
show all
Defined in:
lib/anchor/inference/active_record/infer/model.rb

Defined Under Namespace

Modules: T

Instance Method Summary collapse

Methods inherited from Base

infer, #initialize

Constructor Details

This class inherits a constructor from Anchor::Inference::ActiveRecord::Infer::Base

Instance Method Details

#inferObject



10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/anchor/inference/active_record/infer/model.rb', line 10

def infer
  res = [serialized, overridden, presence_required, defaulted, column_comments].compact.reduce(columns) do |acc, elem|
    elem.wrap(acc)
  end

  res.overwrite(
    rbs.pick(
      res.pick_by_value(unknown.singleton_class).keys,
    ),
    keep_description: :left,
  )
end