Decode fills v's exported fields from inputs using ub struct tags. A field's
key is the tag name, or the kebab-cased field name when the tag has no name.
String values like "30s" decode into time.Duration fields. v must be a
non-nil pointer to a struct.