本文整理汇总了Golang中github.com/codegangsta/cli.Context.NumFlags方法的典型用法代码示例。如果您正苦于以下问题:Golang Context.NumFlags方法的具体用法?Golang Context.NumFlags怎么用?Golang Context.NumFlags使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/codegangsta/cli.Context
的用法示例。
在下文中一共展示了Context.NumFlags方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: oci2docker
func oci2docker(c *cli.Context) {
ociPath := c.String("oci-bundle")
imgName := c.String("image-name")
port := c.String("port")
flagDebug := c.Bool("debug")
if c.NumFlags() == 0 {
cli.ShowCommandHelp(c, "convert")
return
}
if ociPath == "" {
logrus.Infof("Please specify OCI bundle path.")
return
}
_, err := os.Stat(ociPath)
if os.IsNotExist(err) {
logrus.Infof("OCI bundle path does not exsit.")
return
}
if imgName == "" {
logrus.Infof("Please specify docker image name for output.")
return
}
convert.RunOCI2Docker(ociPath, flagDebug, imgName, port)
return
}
示例2: Run
func (cmd *Entity) Run(scope scope.Scope, c *cli.Context) {
if err := net.VerifyLoginURL(cmd.network); err != nil {
error_handler.ErrorExit(err)
}
if c.NumFlags() > 0 && c.FlagNames()[0] == "children" {
cmd.listentity(scope.Application, c.StringSlice("children")[0])
} else {
if c.Args().Present() {
cmd.show(scope.Application, c.Args().First())
} else {
if scope.Entity == scope.Application {
cmd.listapp(scope.Application)
} else {
cmd.listentity(scope.Application, scope.Entity)
}
}
}
}
示例3: makeConfig
func makeConfig(ctx *cli.Context) (*Config, []error) {
var errs []error
if ctx.GlobalBool("help") || ctx.NumFlags() == 0 {
errs = append(errs, errors.New(""))
return nil, errs
}
if ctx.GlobalString("pattern") == "" {
errs = append(errs, errors.New("Specify --pattern (-p) to extract imports.\n\n"))
}
pattern, err := regexp.Compile(ctx.GlobalString("pattern"))
if err != nil {
errs = append(errs, errors.New(regexErrorMessage("--pattern (-p)")+err.Error()+"\n\n"))
}
module, err := regexp.Compile(ctx.GlobalString("module"))
if err != nil {
errs = append(errs, errors.New(regexErrorMessage("--module (-m)")+err.Error()+"\n\n"))
}
if ctx.GlobalString("module") == "" {
module = nil
}
start, err := regexp.Compile(ctx.GlobalString("start"))
if err != nil {
errs = append(errs, errors.New(regexErrorMessage("--start (-s)")+err.Error()+"\n\n"))
}
if ctx.GlobalString("start") == "" {
start = nil
}
end, err := regexp.Compile(ctx.GlobalString("end"))
if err != nil {
errs = append(errs, errors.New(regexErrorMessage("--end (-e)")+err.Error()+"\n\n"))
}
if ctx.GlobalString("end") == "" {
end = nil
}
root := ctx.GlobalString("root")
if root != "" {
root, err = filepath.Abs(root)
if err != nil {
errs = append(errs, errors.New(regexErrorMessage("--root")+err.Error()+"\n\n"))
}
}
output := ctx.App.Writer
outfile := ctx.GlobalString("output")
if outfile != "" {
file, err := os.Create(outfile)
if err != nil {
errs = append(errs, errors.New("Cannot create the output file: "+outfile+"\n\n"))
} else {
output = file
}
}
paths := ctx.Args()
if len(paths) == 0 {
errs = append(errs, errors.New("Specify source codes.\n\n"))
}
if len(errs) > 0 {
return nil, errs
}
return &Config{
Pattern: pattern,
Module: module,
Reverse: ctx.GlobalBool("reverse"),
Start: start,
End: end,
Format: ctx.GlobalString("format"),
Paths: paths,
Recursive: ctx.GlobalBool("recursive"),
Root: root,
Output: output,
}, nil
}