Class: Langue::Language

Inherits:
Object
  • Object
show all
Defined in:
lib/langue/language.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options = {}) ⇒ Language

Returns a new instance of Language.



27
28
29
# File 'lib/langue/language.rb', line 27

def initialize(options = {})
  @options = options
end

Class Method Details

.depend_to(orig_method_name, *gems) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
# File 'lib/langue/language.rb', line 14

def depend_to(orig_method_name, *gems)
  method_name = "_#{orig_method_name}"
  alias_method(method_name, orig_method_name) unless respond_to?(method_name)

  define_method(orig_method_name) do |*args|
    gems.each { |gem| require gem }
    value = __send__(method_name, *args)
    self.class.class_eval { alias_method(orig_method_name, method_name) }
    value
  end
end

.idObject

Raises:



8
9
10
11
12
# File 'lib/langue/language.rb', line 8

def id
  parts = name.split('::').reverse.drop_while { |part| part == 'Language' }
  raise InvalidDefinition, "'#{name}' is invalid definition" if parts.empty?
  parts.first.underscore
end