// Package main provides a typing test package main import ( "fmt" "github.com/docopt/docopt-go" "github.com/noqqe/serra/src/serra" ) //[--count:1 :[mmq/1] : add:true cards:false remove:false set:false sets:false stats:false update:false] var opts struct { Add bool `docopt:"add"` Remove bool `docopt:"remove"` Cards bool `docopt:"cards"` Card bool `docopt:"card"` Set bool `docopt:"set"` Sets bool `docopt:"sets"` Stats bool `docopt:"stats"` Missing bool `docopt:"missing"` Update bool `docopt:"update"` CardId []string `docopt:""` SetCode string `docopt:",--set"` Count int64 `docopt:"--count"` Sort string `docopt:"--sort"` Rarity string `docopt:"--rarity"` } // Main Loop func main() { usage := `Serra Usage: serra add ... [--count=] serra remove ... serra cards [--rarity=] [--set=] [--sort=] serra card ... serra missing serra set serra sets serra update serra stats Options: -h --help Show this screen. --count= Count of card to add. [default: 1]. --version Show version. ` args, _ := docopt.ParseDoc(usage) err := args.Bind(&opts) if err != nil { fmt.Println(err) } serra.Banner() if opts.Add { serra.Add(opts.CardId, opts.Count) } else if opts.Remove { serra.Remove(opts.CardId) } else if opts.Cards { serra.Cards(opts.Rarity, opts.SetCode, opts.Sort) } else if opts.Card { serra.ShowCard(opts.CardId) } else if opts.Sets { serra.Sets() } else if opts.Missing { serra.Missing(opts.SetCode) } else if opts.Set { serra.ShowSet(opts.SetCode) } else if opts.Update { serra.Update() } else if opts.Stats { serra.Stats() } }