class Necromancer::Context
A class used by Necromancer
to provide user interace
@api public
Attributes
conversions[R]
Public Class Methods
new(&block)
click to toggle source
Create a context.
@api private
# File lib/necromancer/context.rb, line 21 def initialize(&block) block.(configuration) if block_given? @conversions = Conversions.new(configuration) @conversions.load end
Public Instance Methods
can?(source, target)
click to toggle source
Check if this converter can convert source to target
@param [Object] source
the source class
@param [Object] target
the target class
@return [Boolean]
@api public
# File lib/necromancer/context.rb, line 74 def can?(source, target) !conversions[source, target].nil? rescue NoTypeConversionAvailableError false end
configuration()
click to toggle source
The configuration object.
@example
converter = Necromancer.new converter.configuration.strict = true
@return [Necromancer::Configuration]
@api public
# File lib/necromancer/context.rb, line 36 def configuration @configuration ||= Configuration.new end
configure() { |configuration| ... }
click to toggle source
Yields global configuration to a block.
@yield [Necromancer::Configuration]
@example
converter = Necromancer.new converter.configure do |config| config.strict true end
@api public
# File lib/necromancer/context.rb, line 51 def configure yield configuration if block_given? end
convert(object = ConversionTarget::UndefinedValue, &block)
click to toggle source
Converts the object @param [Object] object
any object to be converted
@api public
# File lib/necromancer/context.rb, line 60 def convert(object = ConversionTarget::UndefinedValue, &block) ConversionTarget.for(conversions, object, block) end
inspect()
click to toggle source
Inspect this context
@api public
# File lib/necromancer/context.rb, line 83 def inspect %(#<#{self.class}@#{object_id} @config=#{configuration}>) end