class Rubysmith::Builders::Pragma

Builds project skeleton pragmas so all Ruby strings are frozen by default.

Public Class Methods

call(...) click to toggle source
# File lib/rubysmith/builders/pragma.rb, line 9
    def self.call(...) = new(...).call

    def initialize configuration, client: Pragmater::Runner
      @configuration = configuration
      @client = client
    end

    def call = client.for(**attributes).call && nil

    private

    attr_reader :configuration, :client

    def attributes
      {
        action: :insert,
        root_dir: configuration.project_root,
        comments: configuration.builders_pragmater_comments,
        includes: configuration.builders_pragmater_includes
      }
    end
  end
end
new(configuration, client: Pragmater::Runner) click to toggle source
# File lib/rubysmith/builders/pragma.rb, line 11
def initialize configuration, client: Pragmater::Runner
  @configuration = configuration
  @client = client
end

Public Instance Methods

attributes() click to toggle source
# File lib/rubysmith/builders/pragma.rb, line 22
def attributes
  {
    action: :insert,
    root_dir: configuration.project_root,
    comments: configuration.builders_pragmater_comments,
    includes: configuration.builders_pragmater_includes
  }
end
call(= client.for(**attributes).call && nil) click to toggle source
# File lib/rubysmith/builders/pragma.rb, line 16
  def call = client.for(**attributes).call && nil

  private

  attr_reader :configuration, :client

  def attributes
    {
      action: :insert,
      root_dir: configuration.project_root,
      comments: configuration.builders_pragmater_comments,
      includes: configuration.builders_pragmater_includes
    }
  end
end