Common Lisp Package: PARSELTONGUE

README:

FUNCTION

Public

=>EQ (TO)

=>EQUAL (TO)

=>ITEMS->STRING (N)

=>ONE-PLUS-MORE (=P)

=>REDUCE-CONCAT (=P)

=>STRING (S)

=>ZERO-PLUS-MORE (P)

Produce a parser which parses P zero or more times and monadically returns the results in a list.

Undocumented

=>AND (&REST PS)

=>ITEMS (N)

=>MAYBE (=P)

=>MAYBE-ALTERNATIVE (=P ALT)

=>OR (&REST PS)

=>SATISFIES (FUN)

=ITEM (INPUT)

=REST (INPUT)

PARSE/FIRST-RESULT (=P INPUT)

PARSER-BIND (=P =>P)

PARSER-PAIR (VALUE INPUT)

PARSER-RETURN (&REST ITEMS)

Private

=>LIST (=P)

ALIST (A KEY)

Return the value at KEY or NIL.

ALIST-CONS (A KEY VAL)

CONS VAL onto the LIST held at KEY in the ALIST A.

MAPCAR/DEAL (FUN LST)

Map FUN over LST. FUN returns a list of two items, the first of which is a key the second of which is a value. The VALUES are accumulated at the KEYS in an ALIST which is returned.

PARSER-PAIR-INPUT (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

PARSER-PAIR-VALUE (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

REVERSE-ALIST-KEYS (A)

Reverse the lists held at each key in A.

ZERO-PLUS-MORE-STEP (SUBSTATE PARSER)

Apply PARSER to the CDR of substate. If it succeeds, cons the result onto the list in the CAR of substate and indicate CONTINUE for MAPCAR/DEAL. If PARSER on CDR of substate FAILS, then reverse the CAR of SUBSTATE and return this value consed with the last INPUT state.

Undocumented

=> (&REST ITEMS)

=>AND2 (=P1 =P2)

=>OR2 (=P1 =P2)

=NIL (INPUT)

BIND-FORM? (FORM)

COPY-PARSER-PAIR (INSTANCE)

MAKE-PARSER-PAIR (&KEY ((VALUE DUM60) NIL) ((INPUT DUM61) NIL))

SETFPARSER-PAIR-INPUT (NEW-VALUE INSTANCE)

PARSER-PAIR-P (OBJECT)

SETFPARSER-PAIR-VALUE (NEW-VALUE INSTANCE)

PARSER-PLUS (&REST PS)

STRCAT (&REST S)

MACRO

Public

Undocumented

DEFPARSER (NAME/ARGS MAYBE-DOC &REST BODY)

PARSER (&REST FORMS)

Private

Undocumented

DEFUN/VAR (NAME ARG-LIST &REST BODY)

NAMED-LET (NAME BINDINGS &REST BODY)

PARSER-HELPER (&REST FORMS)

GENERIC-FUNCTION

Public

Undocumented

EMPTY? (LIST)

NEXT (LIST)

REST-OF (LIST)

Private

Undocumented

EMPTY-OF (LIST)

PREFIX (O STRING)

VARIABLE

Public

=ITEM (INPUT)

A parser

=REST (INPUT)

A parser

Private

=NIL (INPUT)

A parser

CLASS

Public

Undocumented

PARSER-PAIR (VALUE INPUT)