(in-package #:monparser) (defun parse (parser data) (let* ((result (funcall parser (make-instance 'parser-input :cursor 0 :data data)))) (if (parsing-p result) (let ((finished? (not (has-data? (parsing-left result))))) (values (parsing-tree result) finished?)) result)))