Module: AutoLoader

Defined in:
lib/sweetloader.rb

Constant Summary collapse

@@root =
''
@@namespaces =
{}

Class Method Summary collapse

Class Method Details

.namespacesObject



74
75
76
# File 'lib/sweetloader.rb', line 74

def self.namespaces
  @@namespaces
end

.namespaces=(namespaces) ⇒ Object



82
83
84
# File 'lib/sweetloader.rb', line 82

def self.namespaces= namespaces
  @@namespaces = namespaces
end

.rootObject



70
71
72
# File 'lib/sweetloader.rb', line 70

def self.root
  @@root
end

.root=(root) ⇒ Object



78
79
80
# File 'lib/sweetloader.rb', line 78

def self.root= root
  @@root = root
end

.translate(name, options = {}) ⇒ Object



86
87
88
89
90
91
92
93
94
# File 'lib/sweetloader.rb', line 86

def self.translate name, options = {}    
  names = name.split('/')
  ns = namespaces.merge(options[:namespaces] || options[:ns] || {})
  names.map do |name|
    clazz_name = name.to_s.camelize
    folder = ns[clazz_name.to_sym] ? ns[clazz_name.to_sym] : name
    folder.sub /\/$/, ''
  end.join('/')
end