Go 命令行應用開發包:Odin
Odin 是一個 Go 語言開發包,用于幫助構建自文檔的命令行應用。
支持Value類型
Value Type | Basic Definition Method | Pointer Defintion Method |
---|---|---|
bool | DefineBoolFlag |
DefineBoolFlagVar |
float64 | DefineFloat64Flag |
DefineFloat64FlagVar |
int | DefineIntFlag |
DefineIntFlagVar |
int64 | DefineInt64Flag |
DefineInt64FlagVar |
string | DefineStringFlag |
DefineStringFlagVar |
time.Duration | DefineDurationFlag |
DefineDurationFlagVar |
uint | DefineUintFlag |
DefineUintFlagVar |
uint64 | DefineUint64Flag |
DefineUint64FlagVar |
Flags also support aliases: aliases are always defined as a rune
to limit them to one character.
FlagAlias(alias rune, flagName string)
支持:
-
必要參數 Required Parameters
-
類型標志和選項解析 Typed Flag/Option Parsing
-
標志別名 Flag Aliasing
-
子命令 DSL 用于創建完整的 CLI 應用
示例:
package main import ( "fmt" "github.com/jwaldrip/odin/cli" ) // CLI is the odin CLI var CLI = NewCLI("0.0.1", "my cli", func(c cli.Command){ if c.Flag("gopher").Get() == true { fmt.Println("IT IS JUST GOPHERTASTIC!!!") } else { fmt.Println("It is just fine") } }) func init(){ CLI.DefineBoolFlag("gopher", false, "is it gophertastic?") CLI.FlagAlias('g', "gopher") } func main(){ CLI.Start() }
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!