-record(token, { wrapper :: gecko:naked(), token_type :: fun((binary()) -> any()), word :: binary() }).