Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

F set flag by reflect #233

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

FengGeSe
Copy link

Add two methods to FlagSet:
AddFlags(obj interface{}) error // add flags to FlagSet by struct
SetValues(obj interface{}) error // set struct values from FlagSet

How to use?
type testOptions struct {
String string flag:"string" short:"a" default:"abc" desc:"this is string"
}
flagSet.AddFlags(testOptions{})

var opts = testOptions{}
flagSet.SetValues(&opts)

The two methods support most types eg. int uint bool string float net.IP time.Duration, It also can support nested struct.

@CLAassistant
Copy link

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.


wushuaishuai seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.
You have signed the CLA already but the status is still pending? Let us recheck it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants