master > master: code go - fügte settings hinzu

This commit is contained in:
RD
2021-11-03 18:43:13 +01:00
parent f55677ed8b
commit f7ef295ec8
11 changed files with 208 additions and 66 deletions

View File

@@ -5,9 +5,12 @@ package cli
* ---------------------------------------------------------------- */
import (
"fmt"
"github.com/akamensky/argparse"
"ads/internal/types"
"ads/pkg/re"
)
/* ---------------------------------------------------------------- *
@@ -62,6 +65,7 @@ var optionsConfigFile = argparse.Options{
* METHODS parse cli
* ---------------------------------------------------------------- */
// Parst cli flags.
func ParseCli(args []string) (*types.CliArguments, error) {
var err error
Parser = argparse.NewParser("cli parser", "Liest Optionen + Flags von Kommandozeile.")
@@ -79,3 +83,9 @@ func ParseCli(args []string) (*types.CliArguments, error) {
err = Parser.Parse(args)
return &arguments, err
}
// Prüft, ob der Parser nur deshalb fehlschlägt, weil ein Command fehlt.
func ParseCliCommandMissing(err error) bool {
// FIXME: unschöne Lösung. Leider ist Error-Typ im Package versteckt
return re.Matches(`(?i)(command required)`, fmt.Sprintf("%v", err))
}