module StandaloneValidator::Definitions
Public Instance Methods
coerce_to_validation(validation_or_validation_class = nil, *args, &block)
click to toggle source
# File lib/standalone_validator/definitions.rb, line 36 def coerce_to_validation(validation_or_validation_class = nil, *args, &block) if validation_or_validation_class.respond_to?(:new) validation_or_validation_class.new(*args, &block) elsif validation_or_validation_class.nil? && block_given? lambda { |object| ValidationResult.build_for(object) do |result| instance_exec(object, result, &block) end } else validation_or_validation_class end end
listeners()
click to toggle source
# File lib/standalone_validator/definitions.rb, line 54 def listeners @listeners ||= Hamster.vector end
lookup_validation_factory(name)
click to toggle source
# File lib/standalone_validator/definitions.rb, line 22 def lookup_validation_factory(name) registry[name.to_sym] end
on_validation_registered(callable = nil, &block)
click to toggle source
# File lib/standalone_validator/definitions.rb, line 26 def on_validation_registered(callable = nil, &block) if block_given? @listeners = listeners.add(block) else @listeners = listeners.add(block) end self end
register_validation_factory(name, validation_factory)
click to toggle source
# File lib/standalone_validator/definitions.rb, line 14 def register_validation_factory(name, validation_factory) @registry = registry.put(name.to_sym, validation_factory) listeners.each do |listener| listener.call(name, validation_factory) end self end
registry()
click to toggle source
# File lib/standalone_validator/definitions.rb, line 50 def registry @registry ||= Hamster.hash end