Class: BaseChip::Tool

Inherits:
Object
  • Object
show all
Includes:
Base, Dsl
Defined in:
lib/base_chip/tool.rb

Instance Attribute Summary

Attributes included from Dsl

#modes

Instance Method Summary collapse

Methods included from Base

included

Methods included from Dsl

#add_child_mode_as_child, included, #inherit, #mode, #mode?, #type_plural

Instance Method Details

#available_versionsObject



47
48
49
# File 'lib/base_chip/tool.rb', line 47

def available_versions
  tool_versions.keys if tool_versions
end

#configureObject



27
28
29
30
31
32
33
34
35
36
# File 'lib/base_chip/tool.rb', line 27

def configure
  return if @configured
  super
  @select_version ||= @default_version
  if selected_version
    selected_version.configure
  else
    fault "Selected version '#{@select_version}' for tool '#{@name}' in '#{parent.full_name}' doesn't exist"
  end
end

#path(str = :crazy_default_value) ⇒ Object



40
41
42
43
44
45
46
# File 'lib/base_chip/tool.rb', line 40

def path(str=:crazy_default_value)
  if str == :crazy_default_value
    @path ||= (selected_version && selected_version.path)
  else
    @path = str
  end
end

#selected_versionObject



37
38
39
# File 'lib/base_chip/tool.rb', line 37

def selected_version
  @selected_version ||= @tool_versions[@select_version] if @tool_versions
end