`as_decorator` forwards all arguments from caller