當前位置: 首頁>>代碼示例>>Golang>>正文


Golang Context.NumFlags方法代碼示例

本文整理匯總了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
}
開發者ID:huawei-openlab,項目名稱:oci2docker,代碼行數:31,代碼來源:main.go

示例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)
			}
		}
	}
}
開發者ID:ahgittin,項目名稱:brooklyn-client,代碼行數:18,代碼來源:entity.go

示例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
}
開發者ID:itchyny,項目名稱:rexdep,代碼行數:82,代碼來源:config.go


注:本文中的github.com/codegangsta/cli.Context.NumFlags方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。