4097
#hash(((form ((lib "parser-tools/lex.rkt") lexeme)) . ((570 . 2))) ((form ((lib "parser-tools/lex.rkt") numeric)) . ((1259 . 2))) ((def ((lib "parser-tools/lex.rkt") token?)) . ((2071 . 3))) ((form ((lib "parser-tools/lex.rkt") define-lex-abbrevs)) . ((1409 . 2))) ((def ((lib "parser-tools/lex.rkt") position-token-start-pos)) . ((838 . 6))) ((form ((lib "parser-tools/lex-sre.rkt") :)) . ((1649 . 2))) ((def ((lib "parser-tools/lex.rkt") position-line)) . ((628 . 6))) ((form ((lib "parser-tools/lex.rkt") upper-case)) . ((1223 . 2))) ((form ((lib "parser-tools/lex.rkt") lower-case)) . ((1205 . 2))) ((form ((lib "parser-tools/lex.rkt") graphic)) . ((1309 . 2))) ((def ((lib "parser-tools/lex.rkt") token-value)) . ((1999 . 3))) ((form ((lib "parser-tools/lex.rkt") define-empty-tokens)) . ((1870 . 2))) ((form ((lib "parser-tools/lex.rkt") define-lex-abbrev)) . ((1374 . 2))) ((form ((lib "parser-tools/lex-sre.rkt") ~)) . ((1731 . 2))) ((def ((lib "parser-tools/lex.rkt") struct:position-token)) . ((838 . 6))) ((form ((lib "parser-tools/lex.rkt") alphabetic)) . ((1187 . 2))) ((def ((lib "parser-tools/lex.rkt") position-token?)) . ((838 . 6))) ((form ((lib "parser-tools/lex-sre.rkt") >=)) . ((1577 . 2))) ((form ((lib "parser-tools/lex.rkt") input-port)) . ((584 . 2))) ((def ((lib "parser-tools/yacc-to-scheme.rkt") trans)) . ((2831 . 3))) ((form ((lib "parser-tools/lex.rkt") nothing)) . ((1172 . 2))) ((def ((lib "parser-tools/lex.rkt") position-token)) . ((838 . 6))) ((form ((lib "parser-tools/lex.rkt") start-pos)) . ((538 . 2))) ((def ((lib "parser-tools/lex.rkt") position-offset)) . ((628 . 6))) ((form ((lib "parser-tools/lex.rkt") iso-control)) . ((1355 . 2))) ((form ((lib "parser-tools/lex-sre.rkt") seq)) . ((1669 . 2))) ((form ((lib "parser-tools/lex-sre.rkt") &)) . ((1691 . 2))) ((form ((lib "parser-tools/lex.rkt") any-string)) . ((1154 . 2))) ((def ((lib "parser-tools/lex.rkt") position-token-end-pos)) . ((838 . 6))) ((form ((lib "parser-tools/yacc.rkt") parser)) . ((2123 . 23))) ((form ((lib "parser-tools/lex.rkt") end-pos)) . ((555 . 2))) ((def ((lib "parser-tools/lex.rkt") make-position)) . ((628 . 6))) ((form ((lib "parser-tools/lex.rkt") punctuation)) . ((1290 . 2))) ((def ((lib "parser-tools/lex.rkt") token-name)) . ((1926 . 3))) ((form ((lib "parser-tools/lex.rkt") blank)) . ((1342 . 2))) ((form ((lib "parser-tools/lex.rkt") define-tokens)) . ((1820 . 2))) ((form ((lib "parser-tools/lex-sre.rkt") +)) . ((1514 . 2))) ((def ((lib "parser-tools/lex.rkt") position)) . ((628 . 6))) ((def ((lib "parser-tools/lex.rkt") struct:position)) . ((628 . 6))) ((form ((lib "parser-tools/lex.rkt") lexer)) . ((0 . 19))) ((form ((lib "parser-tools/lex-sre.rkt") ?)) . ((1534 . 2))) ((form ((lib "parser-tools/lex.rkt") char-set)) . ((1112 . 2))) ((form ((lib "parser-tools/lex-sre.rkt") *)) . ((1494 . 2))) ((form ((lib "parser-tools/lex-plt-v200.rkt") epsilon)) . ((1783 . 2))) ((form ((lib "parser-tools/lex-sre.rkt") or)) . ((1628 . 2))) ((form ((lib "parser-tools/lex.rkt") define-lex-trans)) . ((1452 . 2))) ((form ((lib "parser-tools/lex.rkt") title-case)) . ((1241 . 2))) ((form ((lib "parser-tools/lex-plt-v200.rkt") ~)) . ((1800 . 2))) ((def ((lib "parser-tools/lex.rkt") position-col)) . ((628 . 6))) ((form ((lib "parser-tools/lex.rkt") whitespace)) . ((1324 . 2))) ((def ((lib "parser-tools/lex.rkt") make-position-token)) . ((838 . 6))) ((form ((lib "parser-tools/lex.rkt") return-without-pos)) . ((602 . 2))) ((form ((lib "parser-tools/lex-sre.rkt") -)) . ((1711 . 2))) ((def ((lib "parser-tools/lex.rkt") file-path)) . ((1027 . 4))) ((form ((lib "parser-tools/lex.rkt") any-char)) . ((1138 . 2))) ((def ((lib "parser-tools/lex.rkt") position?)) . ((628 . 6))) ((form ((lib "parser-tools/lex-sre.rkt") **)) . ((1601 . 2))) ((form ((lib "parser-tools/lex.rkt") lexer-src-pos)) . ((486 . 2))) ((form ((lib "parser-tools/lex.rkt") symbolic)) . ((1274 . 2))) ((def ((lib "parser-tools/lex.rkt") position-token-token)) . ((838 . 6))) ((form ((lib "parser-tools/lex-sre.rkt") /)) . ((1751 . 2))) ((form ((lib "parser-tools/lex-sre.rkt") =)) . ((1554 . 2))))
syntax
(lexer [trigger action-expr] ...)
 
trigger = re
        | (eof)
        | (special)
        | (special-comment)
           
re      = id
        | string
        | character
        | (repetition lo hi re)
        | (union re ...)
        | (intersection re ...)
        | (complement re)
        | (concatenation re ...)
        | (char-range char char)
        | (char-complement re)
        | (id datum ...)
syntax
(lexer-src-pos (trigger action-expr) ...)
syntax
start-pos
syntax
end-pos
syntax
lexeme
syntax
input-port
syntax
return-without-pos
struct
(struct position (offset line col)
        #:extra-constructor-name make-position)
  offset : exact-positive-integer?
  line : exact-positive-integer?
  col : exact-nonnegative-integer?
struct
(struct position-token (token start-pos end-pos)
        #:extra-constructor-name make-position-token)
  token : any/c
  start-pos : position?
  end-pos : position?
parameter
(file-path) -> any/c
(file-path source) -> void?
  source : any/c
syntax
(char-set string)
syntax
any-char
syntax
any-string
syntax
nothing
syntax
alphabetic
syntax
lower-case
syntax
upper-case
syntax
title-case
syntax
numeric
syntax
symbolic
syntax
punctuation
syntax
graphic
syntax
whitespace
syntax
blank
syntax
iso-control
syntax
(define-lex-abbrev id re)
syntax
(define-lex-abbrevs (id re) ...)
syntax
(define-lex-trans id trans-expr)
syntax
(* re ...)
syntax
(+ re ...)
syntax
(? re ...)
syntax
(= n re ...)
syntax
(>= n re ...)
syntax
(** n m re ...)
syntax
(or re ...)
syntax
(: re ...)
syntax
(seq re ...)
syntax
(& re ...)
syntax
(- re ...)
syntax
(~ re ...)
syntax
(/ char-or-string ...)
syntax
(epsilon)
syntax
(~ re ...)
syntax
(define-tokens group-id (token-id ...))
syntax
(define-empty-tokens group-id (token-id ...))
procedure
(token-name t) -> symbol?
  t : (or/c token? symbol?)
procedure
(token-value t) -> any/c
  t : (or/c token? symbol?)
procedure
(token? v) -> boolean?
  v : any/c
syntax
(parser clause ...)
 
clause     = (grammar (non-terminal-id
                       ((grammar-id ...) maybe-prec expr)
                       ...)
                      ...)
           | (tokens group-id ...)
           | (start non-terminal-id ...)
           | (end token-id ...)
           | (error expr)
           | (precs (assoc token-id ...) ...)
           | (src-pos)
           | (suppress)
           | (debug filename)
           | (yacc-output filename)
              
maybe-prec = 
           | (prec token-id)
              
assoc      = left
           | right
           | nonassoc
procedure
(trans file) -> any/c
  file : path-string?
