bonzai/comp/comp.go
2022-02-19 19:22:03 -05:00

22 lines
654 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
GetCompleter() Completer
}