blob: 5af2a64e425ac1addc390ab7b2d5eb893e9c132a [file] [log] [blame]
// Copyright 2015 The Vanadium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Package flags provides definitions for commonly used flags and, where
// appropriate, implementations of the flag.Value interface for those flags to
// ensure that only valid values of those flags are supplied. Some of these
// flags may also be specified using environment variables directly and are
// documented accordingly; in these cases the command line value takes
// precedence over the environment variable.
//
// Flags are defined as 'groups' of related flags so that the caller may choose
// which ones to use without having to be burdened with the full set. The groups
// may be used directly or via the Flags type that aggregates multiple
// groups. In all cases, the flags are registered with a supplied flag.FlagSet
// and hence are not forced onto the command line unless the caller passes in
// flag.CommandLine as the flag.FlagSet to use.
//
// In general, this package will be used by vanadium profiles and the runtime
// implementations, but can also be used by any application that wants access to
// the flags and environment variables it supports.
package flags