Sha256: 7909bc22c758b32f3e6e55046a63bdcbfbbbfd81198637d0f29dad0797bd7ef0
Contents?: true
Size: 1.46 KB
Versions: 56
Compression:
Stored size: 1.46 KB
Contents
# encoding: utf-8 require 'fedux_org_stdlib/logic_converters/exceptions' require 'fedux_org_stdlib/logic_converters/on_off_converter' require 'fedux_org_stdlib/logic_converters/true_false_converter' require 'fedux_org_stdlib/logic_converters/yes_no_converter' require 'fedux_org_stdlib/logic_converters/y_n_converter' module FeduxOrgStdlib module LogicConverters # Generic converter which passes arguments to other converters, e.g. # true/false, yes/no, on/off, y/n-converters class LogicConverter # @param [String, Symbol] type (true_false, yes_no, on_off) # choose the type of converter which should be used def initialize(type) @converter = case type.to_s when 'true_false' TrueFalseConverter.new when 'yes_no' YesNoConverter.new when 'on_off' OnOffConverter.new when 'y_n' YNConverter.new else fail FeduxOrgStdlib::LogicConverters::Exceptions::InvalidType, "Unknown type \"#{type}\" for logic converter. Valid types are \"true_false\", \"yes_no\" or \"on_off\"." end end # @param [true,false] value # the logic value which should be converted # @return [String] # the converted value def parse(value) @converter.parse(value) end end end end
Version data entries
56 entries across 56 versions & 1 rubygems