class Chroma::PaletteBuilder

Class internally used to build custom palettes from {Chroma.define_palette}.

Public Class Methods

build(&block) click to toggle source

Wrapper to instantiate a new instance of {PaletteBuilder} and call its

{PaletteBuilder#build} method.

@param block [Proc] the palette definition block @return [PaletteBuilder::PaletteEvaluator] lazy palette generator

# File lib/chroma/palette_builder.rb, line 9
def self.build(&block)
  new(&block).build
end
new(&block) click to toggle source

@param block [Proc] the palette definition block

# File lib/chroma/palette_builder.rb, line 14
def initialize(&block)
  @block = block
end

Public Instance Methods

build() click to toggle source

Build the custom palette @return [PaletteBuilder::PaletteEvaluator] lazy palette generator

# File lib/chroma/palette_builder.rb, line 20
def build
  dsl = PaletteBuilderDsl.new
  dsl.instance_eval(&@block)
  dsl.evaluator
end