Sha256: 7d06c2686a52edb43ac45e064a2e7e8d9cf8113c08356b9c677b897cfe0f9176

Contents?: true

Size: 730 Bytes

Versions: 2

Compression:

Stored size: 730 Bytes

Contents

# frozen_string_literal: true

require "pragmater"

module Rubysmith
  module Builders
    # Builds project skeleton pragmas so all Ruby strings are frozen by default.
    class Pragma
      def self.call realm
        new(realm).call
      end

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

      def call
        client.for(**attributes).call
        nil
      end

      private

      attr_reader :realm, :client

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

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rubysmith-0.9.1 lib/rubysmith/builders/pragma.rb
rubysmith-0.9.0 lib/rubysmith/builders/pragma.rb