fix structure error

This commit is contained in:
Grigoryev Ilya Alekseevich
2026-03-31 23:34:37 +05:00
parent b8997e1ac9
commit 9af8091edd
4 changed files with 18 additions and 28 deletions

View File

@@ -6,42 +6,31 @@ import (
"github.com/alecthomas/kong"
)
// Функция создания флагов и рагументов
func getNewCmd() *CMD {
return &CMD{}
// Структура CLI
type CLI struct {
parser *kong.Kong
cmd CMD
}
// Функция создания парсера
func getNewParser() *kong.Kong {
return kong.Must(
// Создания экземпляра CLI
func NewCLI() *CLI {
c := &CLI{}
c.parser = kong.Must(
&c.cmd,
kong.Name("mftecmd"),
kong.Description("Utility for processing $MFT, $J, $LogFile, $Boot, $SDS"),
kong.UsageOnError(),
)
return c
}
// Структура CLI
type cli struct {
parser kong.Kong // Парсер
cmd CMD // Аргументы
}
// Создания экземпляра CLI.
// Возвращает указатель на экземпляр CLI
func NewCLI() *cli {
return &cli{
parser: *getNewParser(),
cmd: *getNewCmd(),
}
}
// Метод запуска CLI.
// Возвращает cmd - экземпляр структуры аргументов и ошибку
func (c *cli) Run() *CMD {
var cmd CMD
// Метод запуска CLI
func (c *CLI) Run() *CMD {
ctx, err := c.parser.Parse(os.Args[1:])
c.parser.FatalIfErrorf(err)
_ = ctx
return &cmd
return &c.cmd
}