oscar.flag

oscar.flag.GLOBAL_FLAGS = <oscar.flag.GlobalFlagSet object>

GlobalFlagSet is a collection of namespaces and flag logic.

oscar.flag.REQUIRED = <oscar.flag._Required object>

Setting a flag’s default to this constant marks it as required.

class oscar.flag.Bool(description, default=None, secure=False)[source]

Boolean-valued flag.

set(value)[source]
type_str = 'Bool'
exception oscar.flag.FlagException[source]

Error in flag initialization or access.

class oscar.flag.Float(description, default=None, secure=False)[source]

Float-valued flag.

set(value)[source]
type_str = 'Float'
class oscar.flag.GlobalFlagSet(usage=<function default_usage>, usage_long=<function default_usage_long>)[source]

GlobalFlagSet is a collection of namespaces and flag logic.

check_required()[source]

Returns a list of (namespace, name, flag) of all unset, required flags.

Return type:list[tuple(str, str, Var)]
find_short(flag)[source]

Find the namespace for a non-qualified flag.

If the flag is not found or multiple flags are found, KeyError is raised.

Return type:str
Raises:KeyError – if the flag is not found or ambiguous
get(namespace, flag)[source]

get the flag object associated with flag in namespace.

Return type:Var
Raises:KeyError – if the flag is not found
namespace(namespace)[source]

Returns a NamespaceFlagSet associated with namespace.

Return type:NamespaceFlagSet
parse_commandline(args)[source]

Parse a commandline into flags and arguments.

Parse a commandline. a single ‘-‘ and a double ‘–’ are treated as equivalent for denoting a flag. Flag values may be separated by ‘=’ or be the next argument. Booleans are a special case that indicate a true value or must have their values separated by ‘=’.

Raises:
  • KeyError – on unknown flag
  • ParseException – on invalid command-line syntax
parse_environment(args)[source]

Parse environment variable tuples.

Call with os.environ:
>>> import os
>>> flag.parse_environment(os.environ.items())

Recognizes SECURED_SETTING_ prefixed flags, translates from base64 and maps to the short name. secure is also set to True on the underlying flag object, which should be respected by users of visit() and visit_all().

parse_ini(file_p)[source]

Parse a ConfigParser compatible file object.

Namespaces are section headers, keys are flags:

[__main__]
foo=bar

[foo.bar]
baz=42

file_p only needs to implement readline(size=0).

visit(func)[source]

Walk all set flags, calling func on each.

Parameters:func (F(str, str, Var)) – visiting function
visit_all(func)[source]

Walk all flags, calling func on each.

Parameters:func (F(str, str, Var)) – visiting function
write_flags(out, namespace='__main__')[source]

Prints the usage to out.

write_flags_long(out)[source]

Prints all flag usage to out.

class oscar.flag.Int(description, default=None, secure=False)[source]

Integer-valued flag.

set(value)[source]
type_str = 'Int'
class oscar.flag.List(inner_type, separator, description, default=None, secure=False)[source]

Flag that is a list of another flag type.

set(value)[source]
type_str = 'List[_]'
class oscar.flag.NamespaceFlagSet[source]

Represents a set of flags in a namespace.

exception oscar.flag.ParseException[source]

Error in command-line parsing.

class oscar.flag.String(description, default=None, secure=False)[source]

String-valued flag.

set(value)[source]
type_str = 'String'
class oscar.flag.Var(description, default=None, secure=False)[source]

Base of all flag accessors.

get()[source]

Return the flag value, or default if it is not set.

is_set()[source]
Return type:bool
type_str = 'Unknown'
value = <object object>
oscar.flag.args()[source]

Return positional args from GLOBAL_FLAGS.

Return type:list[str]
oscar.flag.default_usage(globalflags)[source]

Default for printing out usage.

oscar.flag.default_usage_long(globalflags, return_code=0)[source]

Default for printing out long-form usage.

oscar.flag.die_on_missing_required()[source]

If missing required flags, die and write usage.

oscar.flag.namespace(name)[source]

Return a namespace from GLOBAL_FLAGS.

Return type:NamespaceFlagSet
oscar.flag.parse_commandline(args)[source]

Parse commandline args with GLOBAL_FLAGS.

oscar.flag.parse_environment(args)[source]

Parse environment args with GLOBAL_FLAGS.

oscar.flag.parse_ini(file_p)[source]

Parse a ConfigParser compatible file with GLOBAL_FLAGS.