Common Lisp Package: BINGE-LEXER

README:

FUNCTION

Public

SKIP-BLOCK (STREAM)

This function is called upon seeing an open curly bracket, to skip everything up to the matching close bracket.

Undocumented

MAKE-PARSABLE-STREAM (STREAM GRAMMAR)

SCAN-FILE (PATHNAME)

Private

DIGIT-VALUE (CHAR &OPTIONAL (BASE 10))

Return the integer value of CHAR if it's a digit otherwise NIL. CHAR can be a letter to accomodate exadecimal numbers. Actually the base can be up to 36.

FPOS-FILE-NAME (INSTANCE)

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

FPOS-TOKEN (INSTANCE)

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

READ-INTEGER-FROM-STRING (STR &KEY (START 0) END (BASE 10))

Try to interprete STR as an integer. Return its value.

READ-INTEGER-NUMBER (STREAM &OPTIONAL (BASE 10))

Try to read an integer number from STREAM according to BASE. Return its integer value.

READ-NUMBER (STREAM FIRST-DIGIT)

Read any kind of syntactically correct C number. Return a token according to type and value.

READ-POUND-LINE (STREAM)

Read a preprocessor line (those starting with # on column 0) and adjust the stream file name and line number accordingly.

Undocumented

COPY-LEXER-POSITION (INSTANCE)

SETFFPOS-FILE-NAME (NEW-VALUE INSTANCE)

SETFFPOS-TOKEN (NEW-VALUE INSTANCE)

GET-RID-OF-OPTIONAL-UL (STREAM)

LEXER-POSITION-P (OBJECT)

MAKE-LEXER-POSITION (&KEY ((LINE DUM0) NIL) ((COLUMN DUM1) NIL) ((FILE-NAME DUM2) NIL) ((TOKEN DUM3) NIL))

MAKE-PARSABLE-FILE (PATHNAME GRAMMAR)

MAKE-PRESENCE-TABLE (CHARS)

READ-CHARACTER-SEQUENCE (STREAM)

READ-DOTS (STREAM)

READ-ESCAPE-SEQUENCE (STREAM)

READ-STRING (STREAM DELIMITER)

READ-WORD (STREAM &REST FIRST-CHARS)

SKIP-TO-EOL (STREAM)

SKIP-WHITESPACE (STREAM)

WORD-COMPONENT-P (C)

WORD-START-P (C)

MACRO

Public

Undocumented

WITH-PARSABLE-FILE ((VAR PATHNAME GRAMMAR) &BODY BODY)

CLASS

Private

Undocumented

LEXER-POSITION

PARSABLE-STREAM

CONSTANT

Private

Undocumented

+WORD-COMPONENT-TABLE+

+WORD-START-TABLE+