argcheck

Boilerplate for checking argument values

There are two broad types of function defined in this submodule: is_* and as_*.

The is_* functions check if the passed value satisfies some requirement, usually being of some type. They are intended to check arguments being passed to objects (primarily torch.nn.Module objects) on initialization. Some accept other types (e.g. is_float() accepts int, np.integer, and np.floating in addition to float) which will quietly be cast to the expected type before returning. Most other is_* functions check whether the value satisfies some condition (e.g. being a member of a collection, is_in(), or being positive, is_pos()). Some, e.g. is_nat(), combine type checks with conditions (is_int() and is_pos()).

The as_* functions are more agressive, casting their first argument to the type immediately, then possibly checking a condition. They are intended primarly for use as the type argument in argparser.ArgumentParser.add_argument().

pydrobert.torch.argcheck.as_bool(val, name=None)
pydrobert.torch.argcheck.as_closed01(val, name=None)
pydrobert.torch.argcheck.as_dir(val, name=None)
pydrobert.torch.argcheck.as_file(val, name=None)
pydrobert.torch.argcheck.as_float(val, name=None)
pydrobert.torch.argcheck.as_int(val, name=None)
pydrobert.torch.argcheck.as_nat(val, name=None)
pydrobert.torch.argcheck.as_negf(val, name=None)
pydrobert.torch.argcheck.as_negi(val, name=None)
pydrobert.torch.argcheck.as_nonnegf(val, name=None)
pydrobert.torch.argcheck.as_nonnegi(val, name=None)
pydrobert.torch.argcheck.as_nonposf(val, name=None)
pydrobert.torch.argcheck.as_nonposi(val, name=None)
pydrobert.torch.argcheck.as_open01(val, name=None)
pydrobert.torch.argcheck.as_path_dir(val, name=None)
pydrobert.torch.argcheck.as_path_file(val, name=None)
pydrobert.torch.argcheck.as_path(val, name=None)
pydrobert.torch.argcheck.as_posf(val, name=None)
pydrobert.torch.argcheck.as_posi(val, name=None)
pydrobert.torch.argcheck.as_str(val, name=None)
pydrobert.torch.argcheck.as_tensor(val, name=None)
pydrobert.torch.argcheck.has_ndim(val, ndim, name=None, allow_none=False)[source]
pydrobert.torch.argcheck.is_a(val, t, name=None, allow_none=False)[source]
pydrobert.torch.argcheck.is_bool(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_btw_closed(val, left, right, name=None, left_name=None, right_name=None, allow_none=False)[source]
pydrobert.torch.argcheck.is_btw_closedf(val, left, right, name=None, left_name=None, right_name=None, allow_none=False)
pydrobert.torch.argcheck.is_btw_closedi(val, left, right, name=None, left_name=None, right_name=None, allow_none=False)
pydrobert.torch.argcheck.is_btw_closedt(val, left, right, name=None, left_name=None, right_name=None, allow_none=False)
pydrobert.torch.argcheck.is_btw_open(val, left, right, name=None, left_name=None, right_name=None, allow_none=False)[source]
pydrobert.torch.argcheck.is_btw_openf(val, left, right, name=None, left_name=None, right_name=None, allow_none=False)
pydrobert.torch.argcheck.is_btw_openi(val, left, right, name=None, left_name=None, right_name=None, allow_none=False)
pydrobert.torch.argcheck.is_btw_opent(val, left, right, name=None, left_name=None, right_name=None, allow_none=False)
pydrobert.torch.argcheck.is_btw(val, left, right, name=None, left_name=None, right_name=None, left_inclusive=False, right_inclusive=False, allow_none=False)[source]
pydrobert.torch.argcheck.is_btwf(val, left, right, name=None, left_name=None, right_name=None, left_inclusive=False, right_inclusive=False, allow_none=False)
pydrobert.torch.argcheck.is_btwi(val, left, right, name=None, left_name=None, right_name=None, left_inclusive=False, right_inclusive=False, allow_none=False)
pydrobert.torch.argcheck.is_btwt(val, left, right, name=None, left_name=None, right_name=None, left_inclusive=False, right_inclusive=False, allow_none=False)
pydrobert.torch.argcheck.is_closed01(val, name=None, allow_none=False)[source]
pydrobert.torch.argcheck.is_closed01f(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_closed01i(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_closed01t(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_dir(val, name=None, allow_none=False)[source]
pydrobert.torch.argcheck.is_equal(val, other, name=None, other_name=None, allow_none=False)[source]
pydrobert.torch.argcheck.is_equalf(val, other, name=None, other_name=None, allow_none=False)
pydrobert.torch.argcheck.is_equali(val, other, name=None, other_name=None, allow_none=False)
pydrobert.torch.argcheck.is_equalt(val, other, name=None, other_name=None, allow_none=False)
pydrobert.torch.argcheck.is_exactly(val, other, name=None, other_name=None, allow_none=False)[source]
pydrobert.torch.argcheck.is_file(val, name=None, allow_none=False)[source]
pydrobert.torch.argcheck.is_float(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_gt(val, other, name=None, other_name=None, allow_none=False)[source]
pydrobert.torch.argcheck.is_gte(val, other, name=None, other_name=None, allow_none=False)[source]
pydrobert.torch.argcheck.is_gtef(val, other, name=None, other_name=None, allow_none=False)
pydrobert.torch.argcheck.is_gtei(val, other, name=None, other_name=None, allow_none=False)
pydrobert.torch.argcheck.is_gtet(val, other, name=None, other_name=None, allow_none=False)
pydrobert.torch.argcheck.is_gtf(val, other, name=None, other_name=None, allow_none=False)
pydrobert.torch.argcheck.is_gti(val, other, name=None, other_name=None, allow_none=False)
pydrobert.torch.argcheck.is_gtt(val, other, name=None, other_name=None, allow_none=False)
pydrobert.torch.argcheck.is_in(val, collection, name=None, allow_none=False)[source]
pydrobert.torch.argcheck.is_int(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_lt(val, other, name=None, other_name=None, allow_none=False)[source]
pydrobert.torch.argcheck.is_lte(val, other, name=None, other_name=None, allow_none=False)[source]
pydrobert.torch.argcheck.is_ltef(val, other, name=None, other_name=None, allow_none=False)
pydrobert.torch.argcheck.is_ltei(val, other, name=None, other_name=None, allow_none=False)
pydrobert.torch.argcheck.is_ltet(val, other, name=None, other_name=None, allow_none=False)
pydrobert.torch.argcheck.is_ltf(val, other, name=None, other_name=None, allow_none=False)
pydrobert.torch.argcheck.is_lti(val, other, name=None, other_name=None, allow_none=False)
pydrobert.torch.argcheck.is_ltt(val, other, name=None, other_name=None, allow_none=False)
pydrobert.torch.argcheck.is_nat(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_neg(val, name=None, allow_none=False)[source]
pydrobert.torch.argcheck.is_negf(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_negi(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_negt(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_nonempty(val, name=None, allow_none=False)[source]
pydrobert.torch.argcheck.is_nonneg(val, name=None, allow_none=False)[source]
pydrobert.torch.argcheck.is_nonnegf(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_nonnegi(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_nonnegt(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_nonpos(val, name=None, allow_none=False)[source]
pydrobert.torch.argcheck.is_nonposf(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_nonposi(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_nonpost(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_numlike(val, name=None, allow_none=False)[source]
pydrobert.torch.argcheck.is_open01(val, name=None, allow_none=False)[source]
pydrobert.torch.argcheck.is_open01f(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_open01i(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_open01t(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_path(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_pos(val, name=None, allow_none=False)[source]
pydrobert.torch.argcheck.is_posf(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_posi(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_post(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_str(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_tensor(val, name=None, allow_none=False)
pydrobert.torch.argcheck.is_token(val, name=None, empty_okay=False, whitespace=' \t\n\r\x0b\x0c', allow_none=False)[source]