Sha256: f2d4c64ed8c71da2cd7b8fd679c574c2b773279a9352faacab878869204cdba9
Contents?: true
Size: 1.37 KB
Versions: 26
Compression:
Stored size: 1.37 KB
Contents
module Vedeu # Allows the storing of HTML/CSS colours and their respective escape # sequences. # # @api public class Colours # @!attribute [r] storage # @return [Hash<String => String>] attr_reader :storage # Returns a new instance of Vedeu::Colours. # # @return [Vedeu::Colours] def initialize @storage = {} end # Registers a colour with respective escape sequence. # # @return [String] def register(colour, escape_sequence) storage.store(colour, escape_sequence) end # Returns a boolean indicating whether the colour has been registered. # # @param colour [String] # @return [Boolean] def registered?(colour) return false unless colour storage.key?(colour) end # Removes all stored colours. # # @return [Hash] def reset! storage.clear end # Retrieves the escape sequence of a registered colour. # # @return [String] def retrieve(colour) storage.fetch(colour, '') end # Retrieves the escape sequence of a registered colour, or registers the # colour with its respective escape sequence. # # @return [String] def retrieve_or_register(colour, escape_sequence) if registered?(colour) retrieve(colour) else register(colour, escape_sequence) end end end # Colours end # Vedeu
Version data entries
26 entries across 26 versions & 1 rubygems