Sha256: 5df3e663f4221891ed8c58822dc8540d3cb9d2dc82d13a095c1b97a88416918e
Contents?: true
Size: 860 Bytes
Versions: 18
Compression:
Stored size: 860 Bytes
Contents
# frozen_string_literal: true require "tocer" require "refinements/structs" module Rubysmith module Builders module Documentation # Builds project skeleton README documentation. class Readme using Refinements::Structs def self.call(...) = new(...).call def initialize configuration, builder: Builder @configuration = configuration @builder = builder end def call return configuration unless configuration.build_readme builder.call(configuration.merge(template_path: "%project_name%/README.#{kind}.erb")) .render .replace(/\n{2,}/, "\n\n") configuration end private attr_reader :configuration, :builder def kind = configuration.documentation_format end end end end
Version data entries
18 entries across 18 versions & 1 rubygems