maybe just pass the `parser` instance through to `handle_*` and let it extract the information it needs?