scobra

package
v0.48.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 20, 2024 License: Apache-2.0 Imports: 20 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DecorateTemplate

func DecorateTemplate(ctx context.Context, root *cobra.Command, cfg *DecorateOptions) (string, error)

Init patches Cobra's usage template with configuration provided.

func ExecuteHandlingError

func ExecuteHandlingError(ctx context.Context, cmd *CobraSnake)

func FormatCommandError

func FormatCommandError(cmd *cobra.Command, err error) string

func HandleErrorByPrintingToConsole

func HandleErrorByPrintingToConsole(cmd *cobra.Command, err error) error

func IsHandledByPrintingToConsole

func IsHandledByPrintingToConsole(err error) bool

func NewCommand added in v0.45.0

func NewCommand(f Cobrad) snake.TypedResolver[*cobra.Command]

func NewCommandResolver

func NewCommandResolver(s *cobra.Command) snake.TypedResolver[*cobra.Command]

func NewWrappedEnum

func NewWrappedEnum(opt snake.Enum) *wrappedEnum

Types

type CobraSnake

type CobraSnake struct {
	RootCommand *cobra.Command
}

func NewCobraSnake

func NewCobraSnake(ctx context.Context, root *cobra.Command) *CobraSnake

func (*CobraSnake) Decorate

func (me *CobraSnake) Decorate(ctx context.Context, self snake.TypedResolver[*cobra.Command], snk snake.Snake, inputs []snake.Input, mw []snake.Middleware) error

func (*CobraSnake) ManagedResolvers

func (me *CobraSnake) ManagedResolvers(_ context.Context) []snake.UntypedResolver

func (*CobraSnake) OnSnakeInit

func (me *CobraSnake) OnSnakeInit(ctx context.Context, snk snake.Snake) error

func (*CobraSnake) ProvideContextResolver added in v0.27.0

func (me *CobraSnake) ProvideContextResolver() snake.UntypedResolver

func (*CobraSnake) ResolveEnum

func (me *CobraSnake) ResolveEnum(typ string, opts []string) (string, error)

type Cobrad added in v0.45.0

type Cobrad interface {
	snake.RegisterableRunFunc
	CobraCommand() *cobra.Command
}

type ContextResolver added in v0.27.0

type ContextResolver struct {
	Quiet bool `usage:"Do not print any output" default:"false"`
	Debug bool `usage:"Print debug output" default:"false"`
}

func (*ContextResolver) Run added in v0.27.0

func (me *ContextResolver) Run(cmd *cobra.Command) (context.Context, error)

type DecorateOptions

type DecorateOptions struct {
	Headings        *color.Color
	Commands        *color.Color
	CmdShortDescr   *color.Color
	ExecName        *color.Color
	Flags           *color.Color
	FlagsDataType   *color.Color
	FlagsDescr      *color.Color
	Aliases         *color.Color
	Example         *color.Color
	NoExtraNewlines bool
	NoBottomNewline bool
}

type ErrHandledByPrintingToConsole

type ErrHandledByPrintingToConsole struct {
	// contains filtered or unexported fields
}

func (*ErrHandledByPrintingToConsole) Error

func (*ErrHandledByPrintingToConsole) Unwrap

type OutputHandler

type OutputHandler struct {
	// contains filtered or unexported fields
}

func NewOutputHandler

func NewOutputHandler(cmd *cobra.Command) *OutputHandler

func (*OutputHandler) HandleFileOutput

func (me *OutputHandler) HandleFileOutput(ctx context.Context, cd snake.Chan, out *snake.FileOutput) error

HandleFileOutput implements sbind.OutputHandler.

func (*OutputHandler) HandleJSONOutput

func (me *OutputHandler) HandleJSONOutput(ctx context.Context, cd snake.Chan, out *snake.JSONOutput) error

func (*OutputHandler) HandleLongRunningOutput

func (*OutputHandler) HandleLongRunningOutput(ctx context.Context, cd snake.Chan, out *snake.LongRunningOutput) error

HandleLongRunningOutput implements sbind.OutputHandler.

func (*OutputHandler) HandleNilOutput

func (me *OutputHandler) HandleNilOutput(ctx context.Context, cd snake.Chan, out *snake.NilOutput) error

HandleNilOutput implements sbind.OutputHandler.

func (*OutputHandler) HandleRawTextOutput

func (me *OutputHandler) HandleRawTextOutput(ctx context.Context, cd snake.Chan, out *snake.RawTextOutput) error

HandleRawTextOutput implements sbind.OutputHandler.

func (*OutputHandler) HandleTableOutput

func (me *OutputHandler) HandleTableOutput(ctx context.Context, cd snake.Chan, out *snake.TableOutput) error

HandleTableOutput implements sbind.OutputHandler.

func (*OutputHandler) Stderr added in v0.31.0

func (me *OutputHandler) Stderr() io.Writer

func (*OutputHandler) Stdin added in v0.31.0

func (me *OutputHandler) Stdin() io.Reader

func (*OutputHandler) Stdout added in v0.31.0

func (me *OutputHandler) Stdout() io.Writer

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL