1;;;; peg.scm --- Parsing Expression Grammar (PEG) parser generator 2;;;; 3;;;; Copyright (C) 2010, 2011 Free Software Foundation, Inc. 4;;;; 5;;;; This library is free software; you can redistribute it and/or 6;;;; modify it under the terms of the GNU Lesser General Public 7;;;; License as published by the Free Software Foundation; either 8;;;; version 3 of the License, or (at your option) any later version. 9;;;; 10;;;; This library is distributed in the hope that it will be useful, 11;;;; but WITHOUT ANY WARRANTY; without even the implied warranty of 12;;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13;;;; Lesser General Public License for more details. 14;;;; 15;;;; You should have received a copy of the GNU Lesser General Public 16;;;; License along with this library; if not, write to the Free Software 17;;;; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18;;;; 19 20(define-module (ice-9 peg) 21 #:use-module (ice-9 peg codegen) 22 #:use-module (ice-9 peg string-peg) 23 ;; Note: the most important effect of using string-peg is not whatever 24 ;; functions it exports, but the fact that it adds a new handler to 25 ;; peg-sexp-compile. 26 #:use-module (ice-9 peg simplify-tree) 27 #:use-module (ice-9 peg using-parsers) 28 #:use-module (ice-9 peg cache) 29 #:re-export (define-peg-pattern 30 define-peg-string-patterns 31 match-pattern 32 search-for-pattern 33 compile-peg-pattern 34 keyword-flatten 35 context-flatten 36 peg:start 37 peg:end 38 peg:string 39 peg:tree 40 peg:substring 41 peg-record?)) 42 43