mirror of
https://github.com/rwxrob/bonzai
synced 2024-11-18 15:25:45 +00:00
24 lines
706 B
Go
24 lines
706 B
Go
// Copyright 2022 Robert S. Muhlestein.
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
|
|
package comp
|
|
|
|
// Completer defines a function to complete the given leaf Command with
|
|
// the provided arguments, if any. Completer functions must never be
|
|
// passed a nil Command or nil as the args slice. See comp.Standard.
|
|
|
|
type Completer func(leaf Command, args ...string) []string
|
|
|
|
// Command interface is only here to break cyclical package imports.
|
|
// This enables Completers of any kind to be create and managed
|
|
// independently.
|
|
type Command interface {
|
|
GetName() string
|
|
GetCommands() []string
|
|
GetHidden() []string
|
|
GetParams() []string
|
|
GetOther() map[string]string
|
|
GetCompleter() Completer
|
|
GetCaller() Command
|
|
}
|