signature_string_parts¶
- odl.util.utility.signature_string_parts(posargs, optargs, mod='!r')[source]¶
Return stringified arguments as tuples.
- Parameters:
- posargssequence
Positional argument values, always included in the returned string tuple.
- optargssequence of 3-tuples
Optional arguments with names and defaults, given in the form:
[(name1, value1, default1), (name2, value2, default2), ...]
Only those parameters that are different from the given default are included as
name=valuekeyword pairs.Note: The comparison is done by using
if value == default:, which is not valid for, e.g., NumPy arrays.- modstring or callable or sequence, optional
Format modifier(s) for the argument strings. In its most general form,
modis a sequence of 2 sequencespos_mod, opt_modwithlen(pos_mod) == len(posargs)andlen(opt_mod) == len(optargs). Each entrymin those sequences can be a string, resulting in the following stringification ofarg:arg_fmt = {{{}}}.format(m) arg_str = arg_fmt.format(arg)
For a callable
to_str, the stringification is simplyarg_str = to_str(arg).The entries
pos_mod, opt_modofmodcan also be strings or callables instead of sequences, in which case the modifier applies to all corresponding arguments.Finally, if
modis a string or callable, it is applied to all arguments.The default behavior is to apply the "{!r}" (
repr) conversion. For floating point scalars, the number of digits printed is determined by theprecisionvalue in NumPy's printing options, which can be temporarily modified withnpy_printoptions.
- Returns:
- pos_stringstuple of str
The stringified positional arguments.
- opt_stringstuple of str
The stringified optional arguments, not including the ones equal to their respective defaults.