cliquiz

package
v0.27.2 Latest Latest
Warning

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

Go to latest
Published: Oct 18, 2023 License: Apache-2.0 Imports: 8 Imported by: 2

Documentation

Overview

Package cliquiz is a tool to collect answers from the users on cli.

Index

Constants

This section is empty.

Variables

View Source
var ErrConfirmationFailed = errors.New("failed to confirm, your answers were different")

ErrConfirmationFailed is returned when second answer is not the same with first one.

Functions

func Ask

func Ask(question ...Question) (err error)

Ask asks questions and collect answers.

func ValuesFromFlagsOrAsk

func ValuesFromFlagsOrAsk(fset *pflag.FlagSet, title string, flags ...Flag) (values map[string]string, err error)

ValuesFromFlagsOrAsk returns values of flags within map[string]string where map's key is the name of the flag and value is flag's value. when provided, values are collected through command otherwise they're asked by prompting user. title used as a message while prompting.

Types

type Flag

type Flag struct {
	Name       string
	IsRequired bool
}

Flag represents a cmd flag.

func NewFlag

func NewFlag(name string, isRequired bool) Flag

NewFlag creates a new flag.

type Option

type Option func(*Question)

Option configures Question.

func DefaultAnswer

func DefaultAnswer(answer interface{}) Option

DefaultAnswer sets a default answer to Question.

func GetConfirmation

func GetConfirmation() Option

GetConfirmation prompts confirmation for the given answer.

func HideAnswer

func HideAnswer() Option

HideAnswer hides the answer to prevent secret information being leaked.

func Required

func Required() Option

Required marks the answer as required.

type Question

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

Question holds information on what to ask user and where the answer stored at.

func NewQuestion

func NewQuestion(question string, answer interface{}, options ...Option) Question

NewQuestion creates a new question.

Jump to

Keyboard shortcuts

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