-struct psi_parser *psi_parser_init(struct psi_parser *P, const char *filename, psi_error_cb error, unsigned flags);
-void psi_parser_syntax_error(struct psi_parser *P, const char *fn, size_t ln, const char *msg, ...);
-ssize_t psi_parser_fill(struct psi_parser *P, size_t n);
+struct psi_parser *psi_parser_init(struct psi_parser *P, psi_error_cb error, unsigned flags);
+bool psi_parser_open_file(struct psi_parser *P, const char *filename);
+bool psi_parser_open_string(struct psi_parser *P, const char *string, size_t length);