Sha256: 04cb182d187a683065d4fb7ef1753718e941a31092e5786d45704a2885bce11b

Contents?: true

Size: 1.04 KB

Versions: 5

Compression:

Stored size: 1.04 KB

Contents

require_relative 'shell/doc_manager'
module Alf
  module Shell

    # This is the main documentation extractor
    DOC_EXTRACTOR = DocManager.new

    # Delegator command factory
    def self.Delegator() 
      Quickl::Delegator(){|builder|
        builder.doc_extractor = DOC_EXTRACTOR
        builder.class_module Command::ClassMethods
        yield(builder) if block_given?
      }
    end

    # Command factory
    def self.Command() 
      Quickl::Command(){|builder|
        builder.command_parent = Alf::Shell::Main
        builder.doc_extractor  = DOC_EXTRACTOR
        builder.class_module Command::ClassMethods
        yield(builder) if block_given?
      }
    end

    # Operator factory
    def self.Operator() 
      Quickl::Command(){|builder|
        builder.command_parent = Alf::Shell::Main
        builder.doc_extractor  = DOC_EXTRACTOR
        builder.class_module Operator::ClassMethods
        yield(builder) if block_given?
      }
    end

  end # module Shell
end # module Alf
require_relative 'shell/command'
require_relative 'shell/operator'

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
alf-0.12.2 lib/alf-shell/alf/shell.rb
alf-0.12.1 lib/alf-shell/alf/shell.rb
alf-0.12.0 lib/alf-shell/alf/shell.rb
alf-0.11.1 lib/alf-shell/alf/shell.rb
alf-0.11.0 lib/alf-shell/alf/shell.rb