tighten lifetime constraint on any_pointer as_reader()