Module: CLI::Kit::Autocall

Defined in:
lib/cli/kit/autocall.rb

Instance Method Summary collapse

Instance Method Details

#autocall(const, &block) ⇒ Object



6
7
8
9
# File 'lib/cli/kit/autocall.rb', line 6

def autocall(const, &block)
  @autocalls ||= {}
  @autocalls[const] = block
end

#const_missing(const) ⇒ Object



11
12
13
14
15
16
17
18
# File 'lib/cli/kit/autocall.rb', line 11

def const_missing(const)
  block = begin
    @autocalls.fetch(const)
  rescue KeyError
    return super
  end
  const_set(const, block.call)
end