amazing-print/amazing_print

View on GitHub
lib/amazing_print/indentator.rb

Summary

Maintainability
A
0 mins
Test Coverage
# frozen_string_literal: true

module AmazingPrint
  class Indentator
    attr_reader :shift_width, :indentation

    def initialize(indentation)
      @indentation = indentation
      @shift_width = indentation.freeze
    end

    def indent
      @indentation += shift_width
      yield
    ensure
      @indentation -= shift_width
    end
  end
end