Module: EacCli::DocoptRunner::Context

Included in:
EacCli::DocoptRunner
Defined in:
lib/eac_cli/docopt_runner/context.rb

Overview

Provides the method context which search and call a method in self and ancestor objects.

Instance Method Summary collapse

Instance Method Details

#context(method) ⇒ Object



7
8
9
10
11
12
13
14
15
# File 'lib/eac_cli/docopt_runner/context.rb', line 7

def context(method)
  current = self
  while current
    return current.send(method) if current.respond_to?(method)

    current = current.respond_to?(:parent) ? current.parent : nil
  end
  raise "Context method \"#{method}\" not found for #{self.class}"
end