Module Expr Str Import alias Import alias Import alias Import alias Import alias Import alias Assign NameStore Call AttributeLoad NameLoad attr NameLoad ClassDef bases NameLoad body Expr Str FunctionDef arguments args NameParam NameParam NameParam defaults body Assign AttributeStore NameLoad attr NameLoad Assign AttributeStore NameLoad attr NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str Return BoolOpAnd CompareGtE NameLoad AttributeLoad NameLoad attr CompareLtE NameLoad AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Expr Str Return BinOpSub AttributeLoad NameLoad attr AttributeLoad NameLoad attr decorator_list NameLoad decorator_list ClassDef bases NameLoad body Expr Str FunctionDef arguments args NameParam defaults body Assign AttributeStore NameLoad attr Call AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Expr Str Return BinOpSub Call AttributeLoad NameLoad attr AttributeLoad NameLoad attr decorator_list NameLoad decorator_list FunctionDef arguments args NameParam defaults body Expr Str Return Call NameLoad NameLoad AttributeLoad NameLoad attr decorator_list FunctionDef arguments args NameParam defaults body Expr Str Return BoolOpAnd Call NameLoad NameLoad Str Call NameLoad NameLoad Str decorator_list FunctionDef arguments args NameParam NameParam defaults body Expr Str Assert Call NameLoad NameLoad Call NameLoad NameLoad Assign NameStore Call AttributeLoad NameLoad attr Assign NameStore ListLoad TupleLoad NameLoad NameLoad While NameLoad body Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr For NameStore NameLoad body If CompareNotIn NameLoad NameLoad body Assign SubscriptStore NameLoad Index NameLoad SubscriptLoad NameLoad Index NameLoad orelse If BoolOpAnd Call NameLoad SubscriptLoad NameLoad Index NameLoad Call NameLoad SubscriptLoad NameLoad Index NameLoad body Expr Call AttributeLoad NameLoad attr TupleLoad SubscriptLoad NameLoad Index NameLoad SubscriptLoad NameLoad Index NameLoad orelse If BoolOpAnd Call NameLoad SubscriptLoad NameLoad Index NameLoad Call NameLoad SubscriptLoad NameLoad Index NameLoad body Expr Call AttributeLoad SubscriptLoad NameLoad Index NameLoad attr SubscriptLoad NameLoad Index NameLoad orelse Assign SubscriptStore NameLoad Index NameLoad SubscriptLoad NameLoad Index NameLoad Return NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body For NameStore NameLoad body If CompareNotEq SubscriptLoad NameLoad Index Num Str body Assign NameStore BinOpMod Str TupleLoad NameLoad NameLoad orelse Assign NameStore NameLoad If Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad body Return NameLoad Expr Call NameLoad BinOpMod Str TupleLoad NameLoad NameLoad decorator_list FunctionDef arguments args NameParam NameParam defaults body With Call NameLoad Call NameLoad NameLoad NameLoad NameStore body TryExcept body Assign NameStore Call AttributeLoad NameLoad attr NameLoad handlers ExceptHandler type NameLoad name NameStore body Expr Call NameLoad BinOpMod Str TupleLoad NameLoad NameLoad orelse Return NameLoad decorator_list FunctionDef arguments args NameParam defaults body Expr Call AttributeLoad NameLoad attr NameLoad Expr Call AttributeLoad NameLoad attr Num decorator_list
N/A N/A Data containers and other utilities. N/A time N/A json N/A collections N/A logging N/A os N/A sys N/A LOG N/A N/A logging getLogger __name__ Range N/A object N/A N/A Encapsulates a ranged defined by a min and max numerical value. __init__ N/A N/A self minimum maximum N/A N/A N/A N/A self min minimum N/A N/A self max maximum N/A within_range N/A N/A self value N/A N/A N/A Returns True if the value is between this Range, inclusive. N/A N/A N/A value N/A self min N/A value N/A self max N/A spread N/A N/A self N/A N/A N/A Returns the spread between this Range's min and max. N/A N/A N/A self max N/A self min N/A property N/A AgingData N/A object N/A N/A Mixin to associate a class with a time of birth. __init__ N/A N/A self N/A N/A N/A N/A self created_at N/A N/A time time N/A age N/A N/A self N/A N/A N/A Return the age of the data in seconds. N/A N/A N/A N/A time time N/A self created_at N/A property N/A quacks_like_dict N/A N/A object N/A N/A N/A Check if object is dict-like N/A N/A isinstance object N/A collections Mapping N/A quacks_like_list N/A N/A object N/A N/A N/A Check if object is list-like N/A N/A N/A hasattr object __iter__ N/A hasattr object append N/A merge N/A N/A a b N/A N/A N/A Merge two deep dicts non-destructively

    Uses a stack to avoid maximum recursion depth exceptions

    >>> a = {'a': 1, 'b': {1: 1, 2: 2}, 'd': 6}
    >>> b = {'c': 3, 'b': {2: 7}, 'd': {'z': [1, 2, 3]}}
    >>> c = merge(a, b)
    >>> from pprint import pprint; pprint(c)
    {'a': 1, 'b': {1: 1, 2: 7}, 'c': 3, 'd': {'z': [1, 2, 3]}}
     N/A N/A quacks_like_dict a N/A quacks_like_dict b N/A dst N/A N/A a copy N/A stack N/A N/A dst b N/A stack N/A N/A N/A current_dst current_src N/A N/A stack pop N/A key current_src N/A N/A N/A key current_dst N/A N/A N/A current_dst N/A key N/A current_src N/A key N/A N/A N/A N/A quacks_like_dict N/A current_src N/A key N/A quacks_like_dict N/A current_dst N/A key N/A N/A N/A N/A stack append N/A N/A current_dst N/A key N/A current_src N/A key N/A N/A N/A N/A quacks_like_list N/A current_src N/A key N/A quacks_like_list N/A current_dst N/A key N/A N/A N/A N/A N/A current_dst N/A key extend N/A current_src N/A key N/A N/A N/A current_dst N/A key N/A current_src N/A key N/A dst N/A find_file N/A N/A filename search_paths N/A N/A N/A search_path search_paths N/A N/A N/A N/A filename N/A 0 / N/A N/A full_path N/A %s/%s N/A search_path filename N/A N/A full_path filename N/A N/A N/A N/A os path exists full_path N/A N/A full_path N/A N/A fatal_error N/A Unable to find '%s' in search paths (%s) N/A filename search_paths N/A load_json_from_search_path N/A N/A filename search_paths N/A N/A N/A N/A open N/A find_file filename search_paths json_file N/A N/A N/A N/A data N/A N/A json load json_file N/A N/A N/A ValueError N/A e N/A N/A N/A fatal_error N/A %s does not contain valid JSON: 
%s
 N/A filename e N/A N/A data N/A fatal_error N/A N/A message N/A N/A N/A N/A N/A LOG error message N/A N/A N/A sys exit 1 N/A