class EvilEvents::Shared::TypeConverter::Converter
@api public @since 0.2.0
Attributes
coercer[R]
@return [Proc]
@api public @since 0.2.0
Public Class Methods
new(coercer)
click to toggle source
@param coercer [Proc]
@api public @since 0.2.0
# File lib/evil_events/shared/type_converter/converter.rb, line 17 def initialize(coercer) raise ArgumentError unless coercer.is_a?(Proc) @coercer = coercer end
Public Instance Methods
convert(value)
click to toggle source
@param value [Mixed] @return [Mixed]
@api public @since 0.2.0
# File lib/evil_events/shared/type_converter/converter.rb, line 28 def convert(value) coercer.call(value) end
transform_to_type(**options)
click to toggle source
@option :default [Mixed] @return [EvilEvents::Shared::Types::Any]
@see EvilEvents::Shared::TypeConverter::TypeBuilder
@since 0.2.0
# File lib/evil_events/shared/type_converter/converter.rb, line 38 def transform_to_type(**options) TypeBuilder.new.tap do |builder| builder.append(:constructor, coercer) builder.append(:default, options[:default]) if options.key?(:default) end.result end