pub fn fold_func_call<T>(
    fold: &mut T,
    func_call: FuncCall
) -> Result<FuncCall, Error>
where T: PlFold + ?Sized,