The parse-js Reference Manual

This is the parse-js Reference Manual, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 17:31:16 2024 GMT+0.

Table of Contents


1 Systems

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


1.1 parse-js

JavaScript parser

Author

Marijn Haverbeke <>

License

BSD

Source

parse-js.asd.

Child Component

src (module).


2 Modules

Modules are listed depth-first from the system components tree.


2.1 parse-js/src

Source

parse-js.asd.

Parent Component

parse-js (system).

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 parse-js/parse-js.asd

Source

parse-js.asd.

Parent Component

parse-js (system).

ASDF Systems

parse-js.


3.1.2 parse-js/src/package.lisp

Source

parse-js.asd.

Parent Component

src (module).

Packages

parse-js.


3.1.3 parse-js/src/util.lisp

Dependency

package.lisp (file).

Source

parse-js.asd.

Parent Component

src (module).

Internals

3.1.4 parse-js/src/tokenize.lisp

Dependency

util.lisp (file).

Source

parse-js.asd.

Parent Component

src (module).

Public Interface
Internals

3.1.5 parse-js/src/parse.lisp

Dependency

tokenize.lisp (file).

Source

parse-js.asd.

Parent Component

src (module).

Public Interface
Internals

4 Packages

Packages are listed by definition order.


4.1 parse-js

Source

package.lisp.

Use List

common-lisp.

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 Special variables

Special Variable: *check-for-reserved-words*
Package

parse-js.

Source

tokenize.lisp.

Special Variable: *ecma-version*
Package

parse-js.

Source

tokenize.lisp.


5.1.2 Ordinary functions

Function: js-parse-error (control &rest args)
Package

parse-js.

Source

tokenize.lisp.

Function: lex-js (stream &key include-comments)
Package

parse-js.

Source

tokenize.lisp.

Function: parse-js (input &key strict-semicolons ecma-version reserved-words)
Package

parse-js.

Source

parse.lisp.

Function: parse-js-string (&rest args)
Package

parse-js.

Source

parse.lisp.

Function: read-js-number (stream &key junk-allowed)
Package

parse-js.

Source

tokenize.lisp.

Reader: token-char (instance)
Writer: (setf token-char) (instance)
Package

parse-js.

Source

tokenize.lisp.

Target Slot

char.

Reader: token-comments-before (instance)
Writer: (setf token-comments-before) (instance)
Package

parse-js.

Source

tokenize.lisp.

Target Slot

comments-before.

Reader: token-line (instance)
Writer: (setf token-line) (instance)
Package

parse-js.

Source

tokenize.lisp.

Target Slot

line.

Reader: token-newline-before (instance)
Writer: (setf token-newline-before) (instance)
Package

parse-js.

Source

tokenize.lisp.

Target Slot

newline-before.

Reader: token-pos (instance)
Writer: (setf token-pos) (instance)
Package

parse-js.

Source

tokenize.lisp.

Target Slot

pos.

Reader: token-type (instance)
Writer: (setf token-type) (instance)
Package

parse-js.

Source

tokenize.lisp.

Target Slot

type.

Reader: token-value (instance)
Writer: (setf token-value) (instance)
Package

parse-js.

Source

tokenize.lisp.

Target Slot

value.


5.1.3 Generic functions

Generic Reader: js-parse-error-char (condition)
Package

parse-js.

Methods
Reader Method: js-parse-error-char ((condition js-parse-error))
Source

tokenize.lisp.

Target Slot

char.

Generic Reader: js-parse-error-line (condition)
Package

parse-js.

Methods
Reader Method: js-parse-error-line ((condition js-parse-error))
Source

tokenize.lisp.

Target Slot

line.


5.1.4 Standalone methods

Method: print-object ((err js-parse-error) stream)
Source

tokenize.lisp.


5.1.5 Conditions

Condition: js-parse-error
Package

parse-js.

Source

tokenize.lisp.

Direct superclasses

simple-error.

Direct methods
Direct slots
Slot: line
Initform

(quote parse-js::*line*)

Readers

js-parse-error-line.

Writers

This slot is read-only.

Slot: char
Package

common-lisp.

Initform

(quote parse-js::*char*)

Readers

js-parse-error-char.

Writers

This slot is read-only.


5.2 Internals


5.2.1 Special variables

Special Variable: *assignment*
Package

parse-js.

Source

parse.lisp.

Special Variable: *atom-keywords*
Package

parse-js.

Source

tokenize.lisp.

Special Variable: *char*
Package

parse-js.

Source

tokenize.lisp.

Special Variable: *in-function*
Package

parse-js.

Source

parse.lisp.

Special Variable: *keywords*
Package

parse-js.

Source

tokenize.lisp.

Special Variable: *keywords-before-expression*
Package

parse-js.

Source

tokenize.lisp.

Special Variable: *label-scope*
Package

parse-js.

Source

parse.lisp.

Special Variable: *line*
Package

parse-js.

Source

tokenize.lisp.

Special Variable: *line-terminators*
Package

parse-js.

Source

tokenize.lisp.

Special Variable: *operator-chars*
Package

parse-js.

Source

tokenize.lisp.

Special Variable: *operators*
Package

parse-js.

Source

tokenize.lisp.

Special Variable: *position*
Package

parse-js.

Source

tokenize.lisp.

Special Variable: *precedence*
Package

parse-js.

Source

parse.lisp.

Special Variable: *reserved-words-ecma-3*
Package

parse-js.

Source

tokenize.lisp.

Special Variable: *reserved-words-ecma-5*
Package

parse-js.

Source

tokenize.lisp.

Special Variable: *unary-postfix*
Package

parse-js.

Source

parse.lisp.

Special Variable: *unary-prefix*
Package

parse-js.

Source

parse.lisp.

Special Variable: *whitespace-chars*
Package

parse-js.

Source

tokenize.lisp.


5.2.2 Macros

Macro: defun/defs (name args &body body)
Package

parse-js.

Source

util.lisp.

Macro: with-defs (&body body)
Package

parse-js.

Source

util.lisp.

Macro: with-label-scope (type label &body body)
Package

parse-js.

Source

parse.lisp.


5.2.3 Ordinary functions

Function: copy-token (instance)
Package

parse-js.

Source

tokenize.lisp.

Function: make-token (&key type value line char pos newline-before comments-before)
Package

parse-js.

Source

tokenize.lisp.

Function: parse-js* (stream &optional strict-semicolons)
Package

parse-js.

Source

parse.lisp.

Function: read-js-number-1 (peek next &key junk-allowed)
Package

parse-js.

Source

tokenize.lisp.

Function: token-id (token)
Package

parse-js.

Source

tokenize.lisp.

Function: token-p (object)
Package

parse-js.

Source

tokenize.lisp.

Function: token-type-p (token type)
Package

parse-js.

Source

tokenize.lisp.

Function: tokenp (token type value)
Package

parse-js.

Source

tokenize.lisp.


5.2.4 Structures

Structure: token
Package

parse-js.

Source

tokenize.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: type
Package

common-lisp.

Readers

token-type.

Writers

(setf token-type).

Slot: value
Readers

token-value.

Writers

(setf token-value).

Slot: line
Readers

token-line.

Writers

(setf token-line).

Slot: char
Package

common-lisp.

Readers

token-char.

Writers

(setf token-char).

Slot: pos
Readers

token-pos.

Writers

(setf token-pos).

Slot: newline-before
Readers

token-newline-before.

Writers

(setf token-newline-before).

Slot: comments-before
Readers

token-comments-before.

Writers

(setf token-comments-before).


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   (  
C   D   F   G   J   L   M   P   R   T   W  
Index Entry  Section

(
(setf token-char): Public ordinary functions
(setf token-comments-before): Public ordinary functions
(setf token-line): Public ordinary functions
(setf token-newline-before): Public ordinary functions
(setf token-pos): Public ordinary functions
(setf token-type): Public ordinary functions
(setf token-value): Public ordinary functions

C
copy-token: Private ordinary functions

D
defun/defs: Private macros

F
Function, (setf token-char): Public ordinary functions
Function, (setf token-comments-before): Public ordinary functions
Function, (setf token-line): Public ordinary functions
Function, (setf token-newline-before): Public ordinary functions
Function, (setf token-pos): Public ordinary functions
Function, (setf token-type): Public ordinary functions
Function, (setf token-value): Public ordinary functions
Function, copy-token: Private ordinary functions
Function, js-parse-error: Public ordinary functions
Function, lex-js: Public ordinary functions
Function, make-token: Private ordinary functions
Function, parse-js: Public ordinary functions
Function, parse-js*: Private ordinary functions
Function, parse-js-string: Public ordinary functions
Function, read-js-number: Public ordinary functions
Function, read-js-number-1: Private ordinary functions
Function, token-char: Public ordinary functions
Function, token-comments-before: Public ordinary functions
Function, token-id: Private ordinary functions
Function, token-line: Public ordinary functions
Function, token-newline-before: Public ordinary functions
Function, token-p: Private ordinary functions
Function, token-pos: Public ordinary functions
Function, token-type: Public ordinary functions
Function, token-type-p: Private ordinary functions
Function, token-value: Public ordinary functions
Function, tokenp: Private ordinary functions

G
Generic Function, js-parse-error-char: Public generic functions
Generic Function, js-parse-error-line: Public generic functions

J
js-parse-error: Public ordinary functions
js-parse-error-char: Public generic functions
js-parse-error-char: Public generic functions
js-parse-error-line: Public generic functions
js-parse-error-line: Public generic functions

L
lex-js: Public ordinary functions

M
Macro, defun/defs: Private macros
Macro, with-defs: Private macros
Macro, with-label-scope: Private macros
make-token: Private ordinary functions
Method, js-parse-error-char: Public generic functions
Method, js-parse-error-line: Public generic functions
Method, print-object: Public standalone methods

P
parse-js: Public ordinary functions
parse-js*: Private ordinary functions
parse-js-string: Public ordinary functions
print-object: Public standalone methods

R
read-js-number: Public ordinary functions
read-js-number-1: Private ordinary functions

T
token-char: Public ordinary functions
token-comments-before: Public ordinary functions
token-id: Private ordinary functions
token-line: Public ordinary functions
token-newline-before: Public ordinary functions
token-p: Private ordinary functions
token-pos: Public ordinary functions
token-type: Public ordinary functions
token-type-p: Private ordinary functions
token-value: Public ordinary functions
tokenp: Private ordinary functions

W
with-defs: Private macros
with-label-scope: Private macros


A.3 Variables

Jump to:   *  
C   L   N   P   S   T   V  
Index Entry  Section

*
*assignment*: Private special variables
*atom-keywords*: Private special variables
*char*: Private special variables
*check-for-reserved-words*: Public special variables
*ecma-version*: Public special variables
*in-function*: Private special variables
*keywords*: Private special variables
*keywords-before-expression*: Private special variables
*label-scope*: Private special variables
*line*: Private special variables
*line-terminators*: Private special variables
*operator-chars*: Private special variables
*operators*: Private special variables
*position*: Private special variables
*precedence*: Private special variables
*reserved-words-ecma-3*: Private special variables
*reserved-words-ecma-5*: Private special variables
*unary-postfix*: Private special variables
*unary-prefix*: Private special variables
*whitespace-chars*: Private special variables

C
char: Public conditions
char: Private structures
comments-before: Private structures

L
line: Public conditions
line: Private structures

N
newline-before: Private structures

P
pos: Private structures

S
Slot, char: Public conditions
Slot, char: Private structures
Slot, comments-before: Private structures
Slot, line: Public conditions
Slot, line: Private structures
Slot, newline-before: Private structures
Slot, pos: Private structures
Slot, type: Private structures
Slot, value: Private structures
Special Variable, *assignment*: Private special variables
Special Variable, *atom-keywords*: Private special variables
Special Variable, *char*: Private special variables
Special Variable, *check-for-reserved-words*: Public special variables
Special Variable, *ecma-version*: Public special variables
Special Variable, *in-function*: Private special variables
Special Variable, *keywords*: Private special variables
Special Variable, *keywords-before-expression*: Private special variables
Special Variable, *label-scope*: Private special variables
Special Variable, *line*: Private special variables
Special Variable, *line-terminators*: Private special variables
Special Variable, *operator-chars*: Private special variables
Special Variable, *operators*: Private special variables
Special Variable, *position*: Private special variables
Special Variable, *precedence*: Private special variables
Special Variable, *reserved-words-ecma-3*: Private special variables
Special Variable, *reserved-words-ecma-5*: Private special variables
Special Variable, *unary-postfix*: Private special variables
Special Variable, *unary-prefix*: Private special variables
Special Variable, *whitespace-chars*: Private special variables

T
type: Private structures

V
value: Private structures