Sha256: 7fd1a91075e91cae06ce8166b679e6d4ea93c2bb3d060103cfc8292310923fd3
Contents?: true
Size: 845 Bytes
Versions: 5
Compression:
Stored size: 845 Bytes
Contents
module Vedeu class InvalidDirective < StandardError; end class Directive class << self def enact(directives = {}) new(directives).enact end end def initialize(directives = {}) @directives = directives || {} end def enact return directives if string? [set_position, set_colour, set_style].join end private attr_reader :directives def string? directives.is_a?(String) end def set_position Position.set(*position) end def set_colour Colour.set(colour) end def set_style Array(style).map { |s| Style.set(s) }.join end def position directives.fetch(:position, []) end def colour directives.fetch(:colour, []) end def style directives.fetch(:style, []) end end end
Version data entries
5 entries across 5 versions & 1 rubygems