parser_utils

Parser utilities.

Functions

bitfield_bool(bit)

Function factory for bitfield decompositions.

float_list([delimiter])

Function factory for float list parsing with adjustable delimiter.

float_or_strings(*strings[, replace, ...])

Function factory for string strip and float conversion functions.

int_map(mapping)

Function factory to parse int and map to output value.

numeric_bool(value, _)

Returns bool from '0' or '1'.

numeric_float(value, _)

Returns float.

numeric_int(value, _)

Returns int.

str_map(mapping[, uppercase])

Function factory to map str to output value.

string_bool(true_string, false_string[, ...])

Function factory for string to bool conversion functions.

strip_float(*remove)

Function factory for string strip and float conversion functions.

strip_str(*remove)

Function factory for string strip functions.

truthy_bool([true_like, false_like])

Parser factory for truthy verifiers.

bitfield_bool

icicle.utils.parser_utils.bitfield_bool(bit)

Function factory for bitfield decompositions.

Parameters:

bit – which bit should be returned as bool on parsing.

float_list

icicle.utils.parser_utils.float_list(delimiter=',')

Function factory for float list parsing with adjustable delimiter.

Parameters:

delimiter – delimiter to split string on. Defaults to ,.

float_or_strings

icicle.utils.parser_utils.float_or_strings(*strings, replace=None, case_sensitive=False)

Function factory for string strip and float conversion functions.

Parameters:
  • strings... – strings which should be accepted as valid instead of float.

  • replace – iterable of strings which should be stripped from output prior to float conversion.

  • case_sensitive – whether strings to be accepted should be tested case- sensitively.

int_map

icicle.utils.parser_utils.int_map(mapping)

Function factory to parse int and map to output value.

Parameters:

mapping – callable or dict definiting mapping. If callable, must take 2 arguments: (value: int, setting: str)

numeric_bool

icicle.utils.parser_utils.numeric_bool(value, _)

Returns bool from ‘0’ or ‘1’.

Parameters:

value – value to convert.

numeric_float

icicle.utils.parser_utils.numeric_float(value, _)

Returns float.

Parameters:

value – value to convert.

numeric_int

icicle.utils.parser_utils.numeric_int(value, _)

Returns int.

Parameters:

value – value to convert.

str_map

icicle.utils.parser_utils.str_map(mapping, uppercase=False)

Function factory to map str to output value.

Parameters:

mapping – callable or dict definiting mapping. If callable, must take 2 arguments: (value: int, setting: str)

string_bool

icicle.utils.parser_utils.string_bool(true_string, false_string, case_sensitive=False)

Function factory for string to bool conversion functions.

Parameters:
  • true_string – string corresponding to true.

  • false_string – string corresponding to false.

  • case_sensitive – whether to respect case sensitivity.

strip_float

icicle.utils.parser_utils.strip_float(*remove)

Function factory for string strip and float conversion functions.

Parameters:

remove... – substrings which should be stripped from output prior to float conversion.

strip_str

icicle.utils.parser_utils.strip_str(*remove)

Function factory for string strip functions.

Parameters:

remove... – substrings which should be removed (replaced by “”) from output.

truthy_bool

icicle.utils.parser_utils.truthy_bool(true_like=(True, 1, '1', 'ON', 'Y', 'YES', 'TRUE'), false_like=(False, 0, '0', 'OFF', 'N', 'NO', 'FALSE'))

Parser factory for truthy verifiers. What is truthy is controlled by true_like, false_like lists.

Parameters:
  • true_like – List of things that should resolve to true_output.

  • false_like – List of things that should resolve to false_output.

Returns:

Verifier function.

Note

FUNCTION FACTORY