Class: Charyf::Skill::Base

Inherits:
Object show all
Includes:
Info
Defined in:
lib/charyf/engine/skill/skill.rb

Class Attribute Summary collapse

Class Method Summary collapse

Methods included from Info

included

Class Attribute Details

._file_nameObject

Returns the value of attribute _file_name.



10
11
12
# File 'lib/charyf/engine/skill/skill.rb', line 10

def _file_name
  @_file_name
end

._file_pathObject

Returns the value of attribute _file_path.



10
11
12
# File 'lib/charyf/engine/skill/skill.rb', line 10

def _file_path
  @_file_path
end

Class Method Details

._subclassesObject



20
21
22
# File 'lib/charyf/engine/skill/skill.rb', line 20

def _subclasses
  @_subclasses ||= Hash.new
end

.inherited(subclass) ⇒ Object



12
13
14
15
16
17
18
# File 'lib/charyf/engine/skill/skill.rb', line 12

def inherited(subclass)
  Base._subclasses[subclass.name.demodulize] = subclass

  # TODO this should be tested
  subclass._file_path = Pathname.new(caller.first[/^[^:]+/]).dirname
  subclass._file_name = Pathname.new(caller.first[/^[^:]+/]).basename
end

.skill_rootObject



26
27
28
# File 'lib/charyf/engine/skill/skill.rb', line 26

def self.skill_root
  self._file_path.join(self._file_name.sub_ext(''))
end