Module: Rabbit::ModuleLoader

Included in:
ImageManipulable::Base, Parser::Base
Defined in:
lib/rabbit/utils.rb

Constant Summary collapse

LOADERS =
{}

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.extend_object(object) ⇒ Object



496
497
498
499
# File 'lib/rabbit/utils.rb', line 496

def extend_object(object)
  super
  LOADERS[object] = []
end

Instance Method Details

#find_loader(*args) ⇒ Object



516
517
518
519
520
# File 'lib/rabbit/utils.rb', line 516

def find_loader(*args)
  loaders.find do |loader|
    loader.match?(*args)
  end
end

#loadersObject



502
503
504
505
506
# File 'lib/rabbit/utils.rb', line 502

def loaders
  LOADERS.find do |loader, value|
    self.ancestors.find {|ancestor| ancestor == loader}
  end[1]
end

#push_loader(loader) ⇒ Object



512
513
514
# File 'lib/rabbit/utils.rb', line 512

def push_loader(loader)
  loaders.push(loader)
end

#unshift_loader(loader) ⇒ Object



508
509
510
# File 'lib/rabbit/utils.rb', line 508

def unshift_loader(loader)
  loaders.unshift(loader)
end