The cl-lexer Reference Manual

This is the cl-lexer Reference Manual, version 1.4, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sun Dec 08 17:07:13 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

The main system appears first, followed by any subsystem dependency.


2.1 cl-lexer

cl-lexer: a lexical analyzer generator

Author

Kenneth Michael Parker

License

BSD-new

Version

1.4

Dependency

regex (system).

Source

cl-lexer.asd.

Child Components

3 Files

Files are sorted by type and then listed depth-first from the systems components trees.


3.1 Lisp


3.1.1 cl-lexer/cl-lexer.asd

Source

cl-lexer.asd.

Parent Component

cl-lexer (system).

ASDF Systems

cl-lexer.


3.1.2 cl-lexer/packages.lisp

Source

cl-lexer.asd.

Parent Component

cl-lexer (system).

Packages

cl-lexer.


3.1.3 cl-lexer/lexer.lisp

Source

cl-lexer.asd.

Parent Component

cl-lexer (system).

Public Interface
Internals

4 Packages

Packages are listed by definition order.


4.1 cl-lexer

Source

packages.lisp.

Use List
  • common-lisp.
  • regex.
Public Interface
Internals

5 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


5.1 Public Interface


5.1.1 Macros

Macro: deflexer (name &rest rules)

Create a lexical analyser. This analyser function takes a string :position, :end, :end-token and :end-value keyword parameters, and returns a function of no arguments that returns the next token and value each time it is called, or (values end-token end-value) when the input string is exhausted.
By default, position = 0, end = length of str, and end-token and end-value = nil.

Package

cl-lexer.

Source

lexer.lisp.

Macro: tokenize (str pos-var &rest rules)
Package

cl-lexer.

Source

lexer.lisp.


5.1.2 Generic functions

Generic Function: int (x)
Package

cl-lexer.

Source

lexer.lisp.

Methods
Method: int ((x string))
Method: int ((x (eql nil)))
Method: int ((x number))
Method: int ((x integer))
Generic Function: num (x)
Package

cl-lexer.

Source

lexer.lisp.

Methods
Method: num ((x string))
Method: num ((x (eql nil)))
Method: num ((x number))

5.2 Internals


5.2.1 Ordinary functions

Function: combine-patterns (pats)
Package

cl-lexer.

Source

lexer.lisp.

Function: expand-tokenize (str pos rules)
Package

cl-lexer.

Source

lexer.lisp.

Function: expand-tokenize-rules (str pos matchedp rules)
Package

cl-lexer.

Source

lexer.lisp.

Function: extract-patterns-and-actions (rules)
Package

cl-lexer.

Source

lexer.lisp.

Function: make-lexer-actions (actions)
Package

cl-lexer.

Source

lexer.lisp.


Appendix A Indexes


A.1 Concepts


A.2 Functions


A.3 Variables