Class: Super::PluginRegistry

Inherits:
Object
  • Object
show all
Defined in:
lib/super/plugin.rb

Class Method Summary collapse

Class Method Details

.base_get(name) ⇒ Object



49
50
51
52
53
# File 'lib/super/plugin.rb', line 49

def base_get(name)
  name = name.to_sym

  bases[name]
end

.base_set(name, klass) ⇒ Object



36
37
38
39
40
41
42
43
44
45
46
47
# File 'lib/super/plugin.rb', line 36

def base_set(name, klass)
  name = name.to_sym

  if !klass.kind_of?(Class)
    raise Error::InvalidPluginArgument,
      "Received `#{klass}` which must be a class"
  end

  bases[name] = klass

  true
end

.include_to(name, klass) ⇒ Object



22
23
24
# File 'lib/super/plugin.rb', line 22

def include_to(name, klass)
  plugin_push(name.to_sym, :include, klass)
end

.plugins_for(name) ⇒ Object



30
31
32
33
34
# File 'lib/super/plugin.rb', line 30

def plugins_for(name)
  name = name.to_sym

  plugins.fetch(name) { {} }
end

.prepend_to(name, klass) ⇒ Object



26
27
28
# File 'lib/super/plugin.rb', line 26

def prepend_to(name, klass)
  plugin_push(name.to_sym, :prepend, klass)
end