class WhoAmI::Function::AnnotateModels

Public Class Methods

new(config, tables) click to toggle source
# File lib/who_am_i/function/annotate_models.rb, line 6
def initialize(config, tables)
  @config = config
  @tables = tables
end

Public Instance Methods

call() click to toggle source
# File lib/who_am_i/function/annotate_models.rb, line 11
def call
  paths
    .flat_map(&Ls.new)
    .flat_map(&ParseModel.new)
    .tap(&ExtractModelData.new)
    .select(&:activerecord?)
    .reject(&:abstract_class?)
    .each(&ResolveTable.new(@tables))
    .reject(&:skipped?)
    .each(&ComputeComment.new)
    .reject(&:skipped?)
    .each(&ComputeContent.new)
    .reject(&:skipped?)
    .each(&WriteModel.new)
end

Private Instance Methods

paths() click to toggle source
# File lib/who_am_i/function/annotate_models.rb, line 29
def paths
  @config.annotate_models_paths
end