module Errorio::InstanceMethods
Methods for targeted objects
Public Class Methods
new(*args)
click to toggle source
Calls superclass method
# File lib/errorio.rb, line 137 def initialize(*args) errorio_initializer super(*args) end
Public Instance Methods
errorio()
click to toggle source
# File lib/errorio.rb, line 171 def errorio @errorio_repo end
errorio_initializer()
click to toggle source
# File lib/errorio.rb, line 142 def errorio_initializer @errorio_repo = {} self.class.errorio_collection_types.each do |e| init_errors_variable(e) if send(e).nil? # Initialize init_errors(e) else # Already initialized for instance, import objects to errorio @errorio_repo[e] = send(e) end # Extend existing message handler @errorio_repo[e].class.send :include, ErrorObjectsMethods unless @errorio_repo[e].class.respond_to?(:to_e) end end
init_errors(e)
click to toggle source
Init errors class for errorio repo
# File lib/errorio.rb, line 165 def init_errors(e) errors = Errors.new(self) @errorio_repo[e] = errors instance_variable_set("@#{e}", errors) end
init_errors_variable(e)
click to toggle source
Add accessor if collection wasn't initialized
# File lib/errorio.rb, line 160 def init_errors_variable(e) self.class.attr_accessor e unless respond_to?(e) end