struct psi_token *psi_token_alloc(struct psi_parser *P);
size_t psi_token_alloc_size(size_t token_len, size_t fname_len);
struct psi_token *psi_token_copy(struct psi_token *src);
struct psi_token *psi_token_alloc(struct psi_parser *P);
size_t psi_token_alloc_size(size_t token_len, size_t fname_len);
struct psi_token *psi_token_copy(struct psi_token *src);
struct psi_token *psi_token_cat(unsigned argc, ...);
struct psi_token *psi_token_append(struct psi_token *T, unsigned argc, ...);
struct psi_token *psi_token_translit(struct psi_token *T, char *from, char *to);
uint64_t psi_token_hash(struct psi_token *t, char *digest_buf);
struct psi_token *psi_token_cat(unsigned argc, ...);
struct psi_token *psi_token_append(struct psi_token *T, unsigned argc, ...);
struct psi_token *psi_token_translit(struct psi_token *T, char *from, char *to);
uint64_t psi_token_hash(struct psi_token *t, char *digest_buf);