class Bake::Command::List

List all available commands.

Public Instance Methods

call() click to toggle source
# File lib/bake/command/list.rb, line 95
def call
        first = true
        terminal = @parent.terminal
        context = @parent.context
        
        if scope = context.scope
                printed = print_scope(terminal, context.scope) do
                        terminal.print_line(:context, context)
                end
                
                if printed
                        terminal.print_line
                end
        end
        
        context.loaders.each do |loader|
                printed = false
                
                loader.each do |path|
                        if scope = loader.scope_for(path)
                                print_scope(terminal, scope, printed: printed) do
                                        terminal.print_line(:loader, loader)
                                        printed = true
                                end
                        end
                end
                
                if printed
                        terminal.print_line
                end
        end
end
format_parameters(parameters, terminal) click to toggle source
# File lib/bake/command/list.rb, line 34
def format_parameters(parameters, terminal)
        parameters.each do |type, name|
                case type
                when :key
                        name = "#{name}="
                when :keyreq
                        name = "#{name}="
                when :keyrest
                        name = "**#{name}"
                else
                        name = name.to_s
                end
                
                terminal.print(:reset, " ")
                terminal.print(type, name)
        end
end
format_recipe(recipe, terminal) click to toggle source
# File lib/bake/command/list.rb, line 52
def format_recipe(recipe, terminal)
        terminal.print(:command, recipe.command)
        
        if parameters = recipe.parameters
                format_parameters(parameters, terminal)
        end
end
print_scope(terminal, scope, printed: false) { || ... } click to toggle source