Module: Boson::BinRunner::Save

Included in:
Boson::BinRunner
Defined in:
lib/boson/save.rb

Instance Method Summary collapse

Instance Method Details

#autoload_command(cmd) ⇒ Object



160
161
162
163
164
165
# File 'lib/boson/save.rb', line 160

def autoload_command(cmd)
  if !Boson.can_invoke?(cmd, false)
    update_index
    super(cmd, load_options)
  end
end

#command_name(cmd) ⇒ Object



181
182
183
# File 'lib/boson/save.rb', line 181

def command_name(cmd)
  cmd.split(Boson::NAMESPACE)[-1]
end

#command_not_found?(cmd) ⇒ Boolean

Returns:

  • (Boolean)


177
178
179
# File 'lib/boson/save.rb', line 177

def command_not_found?(cmd)
  super && (!(Index.read && Index.find_command(cmd[/\w+/])) || cmd.include?(NAMESPACE))
end

#default_librariesObject



190
191
192
193
# File 'lib/boson/save.rb', line 190

def default_libraries
  super + Boson.repos.map {|e| e.config[:bin_defaults] || [] }.flatten +
    Dir.glob('Bosonfile')
end

#eval_execute_option(str) ⇒ Object



185
186
187
188
# File 'lib/boson/save.rb', line 185

def eval_execute_option(str)
  define_autoloader
  super
end

#execute_command(cmd, args) ⇒ Object



171
172
173
174
175
# File 'lib/boson/save.rb', line 171

def execute_command(cmd, args)
  @command = cmd # for external errors
  autoload_command cmd
  super
end

#update_indexObject



167
168
169
# File 'lib/boson/save.rb', line 167

def update_index
  Index.update(verbose: verbose)
end