More fixes for functions (#503)
* add missing *args, **kwargs in WalkMapper.map_call * memoize clone_for_callee * remove default CombineMapper map_call implementation * don't memoize map_function_definition in cached walk mappers doesn't make sense, since it doesn't return anything * support calls in InputGatherer * make NamedCallResult compatible with attrs cache_hash=True * enable cache_hash on FunctionDefinition * enable calls in DirectPredecessorsGetter * memoize Call creation * make NamedCallResult.call a property * remove redundant NamedCallResult.name (already defined in NamedArray) * memoize NamedCallResult creation * fix docstring * remove non-argument placeholder check now done in arraycontext * fix equality for FunctionDefinition * add FIXME * attempt to fix doc warning * don't construct NamedCallResult directly * fix mapper method name in UsersCollector * add FIXME * Revert "add FIXME" This reverts commit 72bf01daf4757c72560c5eaf937377b57ce6b07d. * Revert "remove non-argument placeholder check" This reverts commit 73478bc4ac16877f946ce868317d9d1d10fb2ca6. * add some more missing *args, **kwargs to WalkMapper * remove some unnecessary *args, **kwargs * add get_func_def_cache_key to walk mappers to correctly handle function caching when extra arguments are present * undo memoizing Call creation * don't use regular dict for function call results * fix type annotation for function result * undo memoizing clone_for_callee doesn't avoid retraversal when the same function is encountered inside the bodies of two different functions * add SizeParamGatherer.map_call default map_call implementation was removed from CombineMapper, so it needs to be here * Revert "add get_func_def_cache_key to walk mappers to correctly handle function caching when extra arguments are present" This reverts commit 45eb68d54d6b0e74776fa9bde8d41c7f798b8c49. * Revert "don't memoize map_function_definition in cached walk mappers" This reverts commit c0e70cdc8821ae7b14c31acf38e996cdf6bd5896.