Sha256: 071979e8e10ad7f00131c8b7825f3157f0c4432fe22e9501929264dca16dc7d6

Contents?: true

Size: 682 Bytes

Versions: 3

Compression:

Stored size: 682 Bytes

Contents

# coding: utf-8

module Pastel
  # Contains logic for resolving styles applied to component
  #
  # Used internally by {Delegator}.
  #
  # @api private
  class ColorResolver
    # The color instance
    # @api public
    attr_reader :color

    # Initialize ColorResolver
    #
    # @param [Color] color
    #
    # @api private
    def initialize(color)
      @color = color
    end

    # Resolve uncolored string
    #
    # @api private
    def resolve(base, unprocessed_string)
      if base.to_a.last == :detach
        Detached.new(color, *base.to_a[0...-1])
      else
        color.decorate(unprocessed_string, *base)
      end
    end
  end # ColorResolver
end # Pastel

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
pastel-0.7.0 lib/pastel/color_resolver.rb
pastel-0.6.1 lib/pastel/color_resolver.rb
pastel-0.6.0 lib/pastel/color_resolver.rb