The js-parser Reference Manual

Next: , Previous: , Up: (dir)   [Contents][Index]

The js-parser Reference Manual

This is the js-parser Reference Manual, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Aug 15 04:55:15 2022 GMT+0.

Table of Contents


1 Systems

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


Previous: , Up: Systems   [Contents][Index]

1.1 js-parser

Author

Red Daly

License

MIT License <http://www.opensource.org/licenses/mit-license.php>

Dependency

cl-ppcre (system).

Source

js-parser.asd.

Child Components

2 Modules

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


Next: , Previous: , Up: Modules   [Contents][Index]

2.1 js-parser/external

Source

js-parser.asd.

Parent Component

js-parser (system).

Child Component

jsyacc.lisp (file).


Previous: , Up: Modules   [Contents][Index]

2.2 js-parser/src

Dependency

external (module).

Source

js-parser.asd.

Parent Component

js-parser (system).

Child Components

3 Files

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


Previous: , Up: Files   [Contents][Index]

3.1 Lisp


Next: , Previous: , Up: Lisp   [Contents][Index]

3.1.1 js-parser/js-parser.asd

Source

js-parser.asd.

Parent Component

js-parser (system).

ASDF Systems

js-parser.

Packages

js-parser-system.

Public Interface

*version* (special variable).

Internals

*muffle-conflicts* (special variable).


3.1.2 js-parser/external/jsyacc.lisp

Source

js-parser.asd.

Parent Component

external (module).

Packages

jsyacc.

Public Interface
Internals

3.1.3 js-parser/src/package.lisp

Source

js-parser.asd.

Parent Component

src (module).

Packages

js-parser.


3.1.4 js-parser/src/general-utilities.lisp

Dependency

package.lisp (file).

Source

js-parser.asd.

Parent Component

src (module).

Internals

3.1.5 js-parser/src/conditions.lisp

Dependency

general-utilities.lisp (file).

Source

js-parser.asd.

Parent Component

src (module).

Public Interface
Internals

3.1.6 js-parser/src/lexer-macros.lisp

Dependency

conditions.lisp (file).

Source

js-parser.asd.

Parent Component

src (module).

Internals

3.1.7 js-parser/src/lex-javascript.lisp

Dependency

lexer-macros.lisp (file).

Source

js-parser.asd.

Parent Component

src (module).

Public Interface
Internals

3.1.8 js-parser/src/js-source-model.lisp

Dependency

lex-javascript.lisp (file).

Source

js-parser.asd.

Parent Component

src (module).

Public Interface
Internals

3.1.9 js-parser/src/parse-javascript-yacc.lisp

Dependency

js-source-model.lisp (file).

Source

js-parser.asd.

Parent Component

src (module).

Internals

3.1.10 js-parser/src/parse-javascript.lisp

Dependency

parse-javascript-yacc.lisp (file).

Source

js-parser.asd.

Parent Component

src (module).

Public Interface

parse (function).

Internals

3.1.11 js-parser/src/source-transformations.lisp

Dependency

parse-javascript.lisp (file).

Source

js-parser.asd.

Parent Component

src (module).

Public Interface
Internals

4 Packages

Packages are listed by definition order.


Next: , Previous: , Up: Packages   [Contents][Index]

4.1 js-parser-system

Source

js-parser.asd.

Use List
  • asdf/interface.
  • common-lisp.
Public Interface

*version* (special variable).

Internals

*muffle-conflicts* (special variable).


Next: , Previous: , Up: Packages   [Contents][Index]

4.2 jsyacc

Source

jsyacc.lisp.

Use List

common-lisp.

Public Interface
Internals

Previous: , Up: Packages   [Contents][Index]

4.3 js-parser

Source

package.lisp.

Use List
  • cl-ppcre.
  • common-lisp.
Public Interface
Internals

5 Definitions

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


Next: , Previous: , Up: Definitions   [Contents][Index]

5.1 Public Interface


Next: , Previous: , Up: Public Interface   [Contents][Index]

5.1.1 Special variables

Special Variable: *symbols-to-tokens*

Map from token symbol to token string. This contains an entry for every token in *tokens-to-symbols*, plus additional entries for the ’operation’ symbols.

Package

js-parser.

Source

lex-javascript.lisp.

Special Variable: *version*

The current version

Package

js-parser-system.

Source

js-parser.asd.


5.1.2 Macros

Macro: define-grammar (name &body body)

DEFINE-GRAMMAR NAME OPTION... PRODUCTION...
PRODUCTION ::= (SYMBOL RHS...)
RHS ::= SYMBOL | (SYMBOL... [ACTION])
Defines the special variable NAME to be a grammar. Options are as in MAKE-GRAMMAR.

Package

jsyacc.

Source

jsyacc.lisp.

Macro: define-parser (name &body body)

DEFINE-GRAMMAR NAME OPTION... PRODUCTION...
PRODUCTION ::= (SYMBOL RHS...)
RHS ::= SYMBOL | (SYMBOL... [ACTION])
Defines the special variable NAME to be a parser. Options are as in MAKE-GRAMMAR and MAKE-PARSER.

Package

jsyacc.

Source

jsyacc.lisp.


5.1.3 Ordinary functions

Reader: array-literal-elements (instance)
Writer: (setf array-literal-elements) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

elements.

Function: array-literal-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf array-literal-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: array-literal-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf array-literal-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: array-literal-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: array-literal-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf array-literal-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: binary-operator-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf binary-operator-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: binary-operator-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf binary-operator-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: binary-operator-left-arg (instance)
Writer: (setf binary-operator-left-arg) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

left-arg.

Reader: binary-operator-op-symbol (instance)
Writer: (setf binary-operator-op-symbol) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

op-symbol.

Function: binary-operator-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Reader: binary-operator-right-arg (instance)
Writer: (setf binary-operator-right-arg) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

right-arg.

Function: binary-operator-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf binary-operator-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: break-statement-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf break-statement-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: break-statement-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf break-statement-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: break-statement-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: break-statement-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf break-statement-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: break-statement-target-label (instance)
Writer: (setf break-statement-target-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

target-label.

Reader: case-clause-body (instance)
Writer: (setf case-clause-body) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

body.

Function: case-clause-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf case-clause-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: case-clause-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf case-clause-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: case-clause-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: case-clause-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf case-clause-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: case-clause-value (instance)
Writer: (setf case-clause-value) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

value.

Reader: catch-clause-binding (instance)
Writer: (setf catch-clause-binding) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

binding.

Reader: catch-clause-body (instance)
Writer: (setf catch-clause-body) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

body.

Function: catch-clause-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf catch-clause-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: catch-clause-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf catch-clause-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: catch-clause-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: catch-clause-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf catch-clause-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: comma-expr-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf comma-expr-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: comma-expr-exprs (instance)
Writer: (setf comma-expr-exprs) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

exprs.

Function: comma-expr-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf comma-expr-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: comma-expr-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: comma-expr-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf comma-expr-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: conditional-condition (instance)
Writer: (setf conditional-condition) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

condition.

Function: conditional-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf conditional-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: conditional-false-arg (instance)
Writer: (setf conditional-false-arg) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

false-arg.

Function: conditional-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf conditional-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: conditional-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: conditional-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf conditional-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: conditional-true-arg (instance)
Writer: (setf conditional-true-arg) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

true-arg.

Function: continue-statement-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf continue-statement-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: continue-statement-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf continue-statement-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: continue-statement-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: continue-statement-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf continue-statement-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: continue-statement-target-label (instance)
Writer: (setf continue-statement-target-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

target-label.

Reader: default-clause-body (instance)
Writer: (setf default-clause-body) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

body.

Function: default-clause-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf default-clause-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: default-clause-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf default-clause-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: default-clause-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: default-clause-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf default-clause-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: do-statement-body (instance)
Writer: (setf do-statement-body) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

body.

Reader: do-statement-condition (instance)
Writer: (setf do-statement-condition) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

condition.

Function: do-statement-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf do-statement-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: do-statement-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf do-statement-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: do-statement-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: do-statement-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf do-statement-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: expression-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf expression-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: expression-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf expression-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: expression-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: expression-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf expression-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: finally-clause-body (instance)
Writer: (setf finally-clause-body) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

body.

Function: finally-clause-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf finally-clause-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: finally-clause-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf finally-clause-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: finally-clause-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: finally-clause-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf finally-clause-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: fn-call-args (instance)
Writer: (setf fn-call-args) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

args.

Function: fn-call-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf fn-call-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: fn-call-fn (instance)
Writer: (setf fn-call-fn) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

fn.

Function: fn-call-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf fn-call-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: fn-call-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: fn-call-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf fn-call-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: for-body (instance)
Writer: (setf for-body) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

body.

Reader: for-condition (instance)
Writer: (setf for-condition) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

condition.

Function: for-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf for-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: for-in-binding (instance)
Writer: (setf for-in-binding) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

binding.

Reader: for-in-body (instance)
Writer: (setf for-in-body) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

body.

Reader: for-in-collection (instance)
Writer: (setf for-in-collection) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

collection.

Function: for-in-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf for-in-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: for-in-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf for-in-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: for-in-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: for-in-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf for-in-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: for-initializer (instance)
Writer: (setf for-initializer) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

initializer.

Function: for-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf for-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: for-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: for-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf for-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: for-step (instance)
Writer: (setf for-step) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

step.

Reader: function-decl-body (instance)
Writer: (setf function-decl-body) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

body.

Function: function-decl-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf function-decl-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: function-decl-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf function-decl-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: function-decl-name (instance)
Writer: (setf function-decl-name) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

name.

Function: function-decl-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Reader: function-decl-parameters (instance)
Writer: (setf function-decl-parameters) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

parameters.

Function: function-decl-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf function-decl-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: function-expression-body (instance)
Writer: (setf function-expression-body) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

body.

Function: function-expression-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf function-expression-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: function-expression-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf function-expression-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: function-expression-name (instance)
Writer: (setf function-expression-name) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

name.

Function: function-expression-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Reader: function-expression-parameters (instance)
Writer: (setf function-expression-parameters) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

parameters.

Function: function-expression-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf function-expression-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: get-constructor (struct-object)

Accept a structure object and return the (likely) name of its constructor. CAVEAT: Assumes that the structure was defined in the same package as its name.

Package

js-parser.

Source

source-transformations.lisp.

Function: identifier-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf identifier-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: identifier-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf identifier-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: identifier-name (instance)
Writer: (setf identifier-name) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

name.

Function: identifier-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: identifier-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf identifier-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: if-statement-condition (instance)
Writer: (setf if-statement-condition) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

condition.

Reader: if-statement-else-statement (instance)
Writer: (setf if-statement-else-statement) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

else-statement.

Function: if-statement-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf if-statement-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: if-statement-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf if-statement-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: if-statement-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: if-statement-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf if-statement-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: if-statement-then-statement (instance)
Writer: (setf if-statement-then-statement) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

then-statement.

Function: make-add-handler (&key label start end handler thunk-body)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-array-literal (&key label start end elements)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-binary-operator (&key label start end op-symbol left-arg right-arg)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-break-statement (&key label start end target-label)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-case-clause (&key label start end value body)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-catch-clause (&key label start end binding body)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-comma-expr (&key label start end exprs)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-conditional (&key label start end condition true-arg false-arg)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-continue-statement (&key label start end target-label)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-default-clause (&key label start end body)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-do-statement (&key label start end condition body)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-finally-clause (&key label start end body)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-fn-call (&key label start end fn args)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-for (&key label start end initializer condition step body)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-for-in (&key label start end binding collection body)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-function-decl (&key label start end name parameters body)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-function-expression (&key label start end name parameters body)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-grammar (&key name start-symbol terminals precedence productions)
Package

jsyacc.

Source

jsyacc.lisp.

Function: make-identifier (&key label start end name)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-if-statement (&key label start end condition then-statement else-statement)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-import-decl (&key label start end type-symbol uripath)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-keyword (x)

Makes a keyword out of a symbol.

Package

js-parser.

Source

source-transformations.lisp.

Function: make-new-expr (&key label start end constructor args)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-numeric-literal (&key label start end value)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-object-literal (&key label start end properties)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-parser (grammar &key discard-memos muffle-conflicts print-derives-epsilon print-first-terminals print-states print-goto-graph print-lookaheads)

Combines COMPUTE-ALL-LOOKAHEADS and COMPUTE-PARSING-TABLES. MUFFLE-WARNINGS is one of NIL, T, :SOME or a list of the form (sr rr).

Package

jsyacc.

Source

jsyacc.lisp.

Function: make-production (symbol derives &key action action-form)
Package

jsyacc.

Source

jsyacc.lisp.

Function: make-property-access (&key label start end target field)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-re-literal (&key label start end pattern options)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-remove-handler (&key label start end handler thunk-body)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-resume-statement (&key label start end target arg)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-return-statement (&key label start end arg)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-source-element (&key label start end)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-special-value (&key label start end symbol)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-statement-block (&key label start end statements)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-string-literal (&key label start end value)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-suspend-statement (&key label start end)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-switch (&key label start end value clauses)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-throw-statement (&key label start end value target)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-try (&key label start end body catch-clause finally-clause)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-unary-operator (&key label start end op-symbol arg)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-var-decl (&key label start end name initializer)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-var-decl-statement (&key label start end var-decls)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-while (&key label start end condition body)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-with (&key label start end scope-object body)
Package

js-parser.

Source

js-source-model.lisp.

Reader: new-expr-args (instance)
Writer: (setf new-expr-args) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

args.

Reader: new-expr-constructor (instance)
Writer: (setf new-expr-constructor) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

constructor.

Function: new-expr-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf new-expr-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: new-expr-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf new-expr-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: new-expr-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: new-expr-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf new-expr-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: numeric-literal-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf numeric-literal-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: numeric-literal-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf numeric-literal-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: numeric-literal-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: numeric-literal-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf numeric-literal-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: numeric-literal-value (instance)
Writer: (setf numeric-literal-value) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

value.

Function: object-literal-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf object-literal-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: object-literal-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf object-literal-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: object-literal-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Reader: object-literal-properties (instance)
Writer: (setf object-literal-properties) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

properties.

Function: object-literal-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf object-literal-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: parse (str)

Parse STR as a Javascript script, returning a list of statements. Semicolon insertion is performed according to the ECMA-262 standard.

Package

js-parser.

Source

parse-javascript.lisp.

Function: parse-with-lexer (lexer parser)

Parse the stream of symbols provided by LEXER using PARSER.
LEXER is a function of no arguments returning a symbol and a semantic value, and should return (VALUES NIL NIL) when the end of input is reached. Handle YACC-PARSE-ERROR to provide custom error reporting.

Package

jsyacc.

Source

jsyacc.lisp.

Function: property-access-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf property-access-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: property-access-field (instance)
Writer: (setf property-access-field) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

field.

Function: property-access-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf property-access-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: property-access-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: property-access-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf property-access-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: property-access-target (instance)
Writer: (setf property-access-target) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

target.

Function: re-literal-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf re-literal-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: re-literal-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf re-literal-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: re-literal-options (instance)
Writer: (setf re-literal-options) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

options.

Function: re-literal-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Reader: re-literal-pattern (instance)
Writer: (setf re-literal-pattern) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

pattern.

Function: re-literal-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf re-literal-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: return-statement-arg (instance)
Writer: (setf return-statement-arg) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

arg.

Function: return-statement-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf return-statement-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: return-statement-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf return-statement-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: return-statement-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: return-statement-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf return-statement-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: source-element-end (instance)
Writer: (setf source-element-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

end.

Reader: source-element-label (instance)
Writer: (setf source-element-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

label.

Function: source-element-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Reader: source-element-start (instance)
Writer: (setf source-element-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

start.

Function: special-value-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf special-value-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: special-value-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf special-value-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: special-value-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: special-value-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf special-value-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: special-value-symbol (instance)
Writer: (setf special-value-symbol) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

symbol.

Function: statement-block-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf statement-block-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: statement-block-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf statement-block-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: statement-block-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: statement-block-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf statement-block-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: statement-block-statements (instance)
Writer: (setf statement-block-statements) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

statements.

Function: string-literal-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf string-literal-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: string-literal-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf string-literal-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: string-literal-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: string-literal-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf string-literal-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: string-literal-value (instance)
Writer: (setf string-literal-value) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

value.

Function: structure-slots (object)

Returns a list of the slot-names of the provided structure object

Package

js-parser.

Source

source-transformations.lisp.

Reader: switch-clauses (instance)
Writer: (setf switch-clauses) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

clauses.

Function: switch-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf switch-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: switch-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf switch-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: switch-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: switch-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf switch-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

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

js-parser.

Source

js-source-model.lisp.

Target Slot

value.

Function: throw-statement-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf throw-statement-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: throw-statement-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf throw-statement-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: throw-statement-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: throw-statement-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf throw-statement-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: throw-statement-target (instance)
Writer: (setf throw-statement-target) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

target.

Reader: throw-statement-value (instance)
Writer: (setf throw-statement-value) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

value.

Reader: try-body (instance)
Writer: (setf try-body) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

body.

Reader: try-catch-clause (instance)
Writer: (setf try-catch-clause) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

catch-clause.

Function: try-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf try-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: try-finally-clause (instance)
Writer: (setf try-finally-clause) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

finally-clause.

Function: try-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf try-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: try-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: try-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf try-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: unary-operator-arg (instance)
Writer: (setf unary-operator-arg) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

arg.

Function: unary-operator-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf unary-operator-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: unary-operator-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf unary-operator-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: unary-operator-op-symbol (instance)
Writer: (setf unary-operator-op-symbol) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

op-symbol.

Function: unary-operator-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: unary-operator-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf unary-operator-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: var-decl-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf var-decl-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: var-decl-initializer (instance)
Writer: (setf var-decl-initializer) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

initializer.

Function: var-decl-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf var-decl-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: var-decl-name (instance)
Writer: (setf var-decl-name) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

name.

Function: var-decl-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: var-decl-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf var-decl-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: var-decl-statement-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf var-decl-statement-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: var-decl-statement-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf var-decl-statement-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: var-decl-statement-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: var-decl-statement-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf var-decl-statement-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: var-decl-statement-var-decls (instance)
Writer: (setf var-decl-statement-var-decls) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

var-decls.

Reader: while-body (instance)
Writer: (setf while-body) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

body.

Reader: while-condition (instance)
Writer: (setf while-condition) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

condition.

Function: while-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf while-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: while-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf while-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: while-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: while-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf while-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: with-body (instance)
Writer: (setf with-body) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

body.

Function: with-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf with-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: with-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Reader: with-scope-object (instance)
Writer: (setf with-scope-object) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

scope-object.

Function: with-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf with-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.


5.1.4 Generic functions

Generic Reader: yacc-parse-error-expected-terminals (condition)
Package

jsyacc.

Methods
Reader Method: yacc-parse-error-expected-terminals ((condition yacc-parse-error))
Source

jsyacc.lisp.

Target Slot

expected-terminals.

Generic Reader: yacc-parse-error-terminal (condition)
Package

jsyacc.

Methods
Reader Method: yacc-parse-error-terminal ((condition yacc-parse-error))
Source

jsyacc.lisp.

Target Slot

terminal.

Generic Reader: yacc-parse-error-value (condition)
Package

jsyacc.

Methods
Reader Method: yacc-parse-error-value ((condition yacc-parse-error))
Source

jsyacc.lisp.

Target Slot

value.


5.1.5 Standalone methods

Method: make-load-form ((a error-action) &optional env)
Source

jsyacc.lisp.

Method: make-load-form ((g grammar) &optional env)
Source

jsyacc.lisp.

Method: make-load-form ((p parser) &optional env)
Source

jsyacc.lisp.

Method: make-load-form ((a reduce-action) &optional env)
Source

jsyacc.lisp.

Method: make-load-form ((p production) &optional env)
Source

jsyacc.lisp.

Method: make-load-form ((a shift-action) &optional env)
Source

jsyacc.lisp.

Method: make-load-form ((a accept-action) &optional env)
Source

jsyacc.lisp.

Method: make-load-form ((self numeric-literal) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self re-literal) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self expression) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self for) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self try) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self comma-expr) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self unary-operator) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self do-statement) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self statement-block) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self for-in) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self new-expr) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self throw-statement) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self function-expression) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self catch-clause) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self fn-call) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self source-element) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self return-statement) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self while) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self array-literal) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self object-literal) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self continue-statement) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self property-access) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self case-clause) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self string-literal) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self default-clause) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self var-decl-statement) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self switch) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self with) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self finally-clause) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self var-decl) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self if-statement) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self break-statement) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self special-value) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self identifier) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self conditional) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self binary-operator) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self function-decl) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self suspend-statement) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self continuation-call) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self continuation-function) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self thunk-function) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self token) &optional environment)
Source

lex-javascript.lisp.

Method: make-load-form ((self import-decl) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self remove-handler) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self resume-statement) &optional environment)
Source

js-source-model.lisp.

Method: make-load-form ((self add-handler) &optional environment)
Source

js-source-model.lisp.

Method: print-object ((object action) stream)
Source

jsyacc.lisp.

Method: print-object ((object kernel) stream)
Source

jsyacc.lisp.

Method: print-object ((object item) stream)
Source

jsyacc.lisp.

Method: print-object ((object production) stream)
Source

jsyacc.lisp.

Method: print-object ((e syntax-error) s)
Source

conditions.lisp.

Method: print-object ((e missing-import) s)
Source

conditions.lisp.


5.1.6 Conditions

Condition: syntax-error

Indicates that an error occured during parsing

Package

js-parser.

Source

conditions.lisp.

Direct superclasses
Direct methods
Direct slots
Slot: token
Initargs

:token

Readers

token.

Writers

This slot is read-only.

Slot: expected-terminals
Initargs

:expected-terminals

Readers

expected-terminals.

Writers

This slot is read-only.

Condition: yacc-parse-error
Package

jsyacc.

Source

jsyacc.lisp.

Direct superclasses

error.

Direct methods
Direct slots
Slot: terminal
Initargs

:terminal

Readers

yacc-parse-error-terminal.

Writers

This slot is read-only.

Slot: value
Initargs

:value

Readers

yacc-parse-error-value.

Writers

This slot is read-only.

Slot: expected-terminals
Initargs

:expected-terminals

Readers

yacc-parse-error-expected-terminals.

Writers

This slot is read-only.


Previous: , Up: Public Interface   [Contents][Index]

5.1.7 Structures

Structure: array-literal
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

expression.

Direct methods

make-load-form.

Direct slots
Slot: elements
Type

list

Readers

array-literal-elements.

Writers

(setf array-literal-elements).

Structure: binary-operator
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

expression.

Direct methods
Direct slots
Slot: op-symbol
Type

symbol

Readers

binary-operator-op-symbol.

Writers

(setf binary-operator-op-symbol).

Slot: left-arg
Type

js-parser:source-element

Readers

binary-operator-left-arg.

Writers

(setf binary-operator-left-arg).

Slot: right-arg
Type

js-parser:source-element

Readers

binary-operator-right-arg.

Writers

(setf binary-operator-right-arg).

Structure: break-statement
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods

make-load-form.

Direct slots
Slot: target-label
Type

(or string null)

Readers

break-statement-target-label.

Writers

(setf break-statement-target-label).

Structure: case-clause
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods

make-load-form.

Direct slots
Slot: value
Type

js-parser:expression

Readers

case-clause-value.

Writers

(setf case-clause-value).

Slot: body
Type

(or (cons js-parser:source-element) null)

Readers

case-clause-body.

Writers

(setf case-clause-body).

Structure: catch-clause
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods

make-load-form.

Direct slots
Slot: binding
Type

string

Readers

catch-clause-binding.

Writers

(setf catch-clause-binding).

Slot: body
Type

(or (cons js-parser:source-element) null)

Readers

catch-clause-body.

Writers

(setf catch-clause-body).

Structure: comma-expr
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

expression.

Direct methods
Direct slots
Slot: exprs
Type

(or (cons js-parser:expression) null)

Readers

comma-expr-exprs.

Writers

(setf comma-expr-exprs).

Structure: conditional
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

expression.

Direct methods
Direct slots
Slot: condition
Package

common-lisp.

Type

js-parser:expression

Readers

conditional-condition.

Writers

(setf conditional-condition).

Slot: true-arg
Type

js-parser:expression

Readers

conditional-true-arg.

Writers

(setf conditional-true-arg).

Slot: false-arg
Type

js-parser:expression

Readers

conditional-false-arg.

Writers

(setf conditional-false-arg).

Structure: continue-statement
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods

make-load-form.

Direct slots
Slot: target-label
Type

(or string null)

Readers

continue-statement-target-label.

Writers

(setf continue-statement-target-label).

Structure: default-clause
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods

make-load-form.

Direct slots
Slot: body
Type

(or (cons js-parser:source-element) null)

Readers

default-clause-body.

Writers

(setf default-clause-body).

Structure: do-statement
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods
Direct slots
Slot: condition
Package

common-lisp.

Type

js-parser:expression

Readers

do-statement-condition.

Writers

(setf do-statement-condition).

Slot: body
Type

js-parser:source-element

Readers

do-statement-body.

Writers

(setf do-statement-body).

Structure: expression

A common base type for all source elements that can be expressions. (note that every expression can be a statement, but not all statements can be expressions)

Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct subclasses
Direct methods

make-load-form.

Structure: finally-clause
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods

make-load-form.

Direct slots
Slot: body
Type

(or (cons js-parser:source-element) null)

Readers

finally-clause-body.

Writers

(setf finally-clause-body).

Structure: fn-call
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

expression.

Direct subclasses

continuation-call.

Direct methods
Direct slots
Slot: fn
Type

js-parser:expression

Readers

fn-call-fn.

Writers

(setf fn-call-fn).

Slot: args
Type

(or (cons js-parser:source-element) null)

Readers

fn-call-args.

Writers

(setf fn-call-args).

Structure: for
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods
Direct slots
Slot: initializer
Type

(or js-parser:source-element null)

Readers

for-initializer.

Writers

(setf for-initializer).

Slot: condition
Package

common-lisp.

Type

(or js-parser:expression null)

Readers

for-condition.

Writers

(setf for-condition).

Slot: step
Package

common-lisp.

Type

(or js-parser:expression null)

Readers

for-step.

Writers

(setf for-step).

Slot: body
Type

(or js-parser:source-element null)

Readers

for-body.

Writers

(setf for-body).

Structure: for-in
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods
Direct slots
Slot: binding
Type

js-parser:source-element

Readers

for-in-binding.

Writers

(setf for-in-binding).

Slot: collection
Type

js-parser:expression

Readers

for-in-collection.

Writers

(setf for-in-collection).

Slot: body
Type

(or js-parser:source-element null)

Readers

for-in-body.

Writers

(setf for-in-body).

Structure: function-decl
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods
Direct slots
Slot: name
Type

string

Readers

function-decl-name.

Writers

(setf function-decl-name).

Slot: parameters
Type

(or (cons string) null)

Readers

function-decl-parameters.

Writers

(setf function-decl-parameters).

Slot: body
Type

(or (cons js-parser:source-element) (cons null) null)

Readers

function-decl-body.

Writers

(setf function-decl-body).

Structure: function-expression
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

expression.

Direct subclasses
Direct methods
Direct slots
Slot: name
Type

(or string null)

Readers

function-expression-name.

Writers

(setf function-expression-name).

Slot: parameters
Type

(or (cons string) null)

Readers

function-expression-parameters.

Writers

(setf function-expression-parameters).

Slot: body
Type

(or (cons js-parser:source-element) null)

Readers

function-expression-body.

Writers

(setf function-expression-body).

Structure: identifier
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

expression.

Direct methods

make-load-form.

Direct slots
Slot: name
Type

string

Readers

identifier-name.

Writers

(setf identifier-name).

Structure: if-statement
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods
Direct slots
Slot: condition
Package

common-lisp.

Type

js-parser:expression

Readers

if-statement-condition.

Writers

(setf if-statement-condition).

Slot: then-statement
Type

(or js-parser:source-element null)

Readers

if-statement-then-statement.

Writers

(setf if-statement-then-statement).

Slot: else-statement
Type

(or js-parser:source-element null)

Readers

if-statement-else-statement.

Writers

(setf if-statement-else-statement).

Structure: new-expr
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

expression.

Direct methods
Direct slots
Slot: constructor
Type

js-parser:expression

Readers

new-expr-constructor.

Writers

(setf new-expr-constructor).

Slot: args
Type

(or (cons js-parser:source-element) null)

Readers

new-expr-args.

Writers

(setf new-expr-args).

Structure: numeric-literal
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

expression.

Direct methods

make-load-form.

Direct slots
Slot: value
Type

number

Readers

numeric-literal-value.

Writers

(setf numeric-literal-value).

Structure: object-literal
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

expression.

Direct methods
Direct slots
Slot: properties
Type

list

Readers

object-literal-properties.

Writers

(setf object-literal-properties).

Structure: property-access
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

expression.

Direct methods
Direct slots
Slot: target
Type

js-parser:source-element

Readers

property-access-target.

Writers

(setf property-access-target).

Slot: field
Type

js-parser:source-element

Readers

property-access-field.

Writers

(setf property-access-field).

Structure: re-literal
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

expression.

Direct methods

make-load-form.

Direct slots
Slot: pattern
Readers

re-literal-pattern.

Writers

(setf re-literal-pattern).

Slot: options
Readers

re-literal-options.

Writers

(setf re-literal-options).

Structure: return-statement
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods

make-load-form.

Direct slots
Slot: arg
Type

(or js-parser:source-element null)

Readers

return-statement-arg.

Writers

(setf return-statement-arg).

Structure: source-element

A common base type for all source elements

Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct methods
Direct slots
Slot: label
Type

(or string null)

Readers

source-element-label.

Writers

(setf source-element-label).

Slot: start
Type

(or number null)

Readers

source-element-start.

Writers

(setf source-element-start).

Slot: end
Type

(or number null)

Readers

source-element-end.

Writers

(setf source-element-end).

Structure: special-value
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

expression.

Direct methods

make-load-form.

Direct slots
Slot: symbol
Package

common-lisp.

Type

symbol

Readers

special-value-symbol.

Writers

(setf special-value-symbol).

Structure: statement-block
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods

make-load-form.

Direct slots
Slot: statements
Type

(or (cons js-parser:source-element) null)

Readers

statement-block-statements.

Writers

(setf statement-block-statements).

Structure: string-literal
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

expression.

Direct methods

make-load-form.

Direct slots
Slot: value
Type

string

Readers

string-literal-value.

Writers

(setf string-literal-value).

Structure: switch
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods

make-load-form.

Direct slots
Slot: value
Type

js-parser:expression

Readers

switch-value.

Writers

(setf switch-value).

Slot: clauses
Type

list

Readers

switch-clauses.

Writers

(setf switch-clauses).

Structure: throw-statement
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods

make-load-form.

Direct slots
Slot: value
Type

(or js-parser:expression null)

Readers

throw-statement-value.

Writers

(setf throw-statement-value).

Slot: target
Type

(or js-parser:expression null)

Readers

throw-statement-target.

Writers

(setf throw-statement-target).

Structure: try
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods
Direct slots
Slot: body
Type

(or (cons js-parser:source-element) null)

Readers

try-body.

Writers

(setf try-body).

Slot: catch-clause
Type

(or js-parser:catch-clause null)

Readers

try-catch-clause.

Writers

(setf try-catch-clause).

Slot: finally-clause
Type

(or js-parser:finally-clause null)

Readers

try-finally-clause.

Writers

(setf try-finally-clause).

Structure: unary-operator
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

expression.

Direct methods
Direct slots
Slot: op-symbol
Type

symbol

Readers

unary-operator-op-symbol.

Writers

(setf unary-operator-op-symbol).

Slot: arg
Type

js-parser:source-element

Readers

unary-operator-arg.

Writers

(setf unary-operator-arg).

Structure: var-decl
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods

make-load-form.

Direct slots
Slot: name
Type

string

Readers

var-decl-name.

Writers

(setf var-decl-name).

Slot: initializer
Type

(or js-parser:expression null)

Readers

var-decl-initializer.

Writers

(setf var-decl-initializer).

Structure: var-decl-statement
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods

make-load-form.

Direct slots
Slot: var-decls
Type

(cons js-parser:var-decl)

Readers

var-decl-statement-var-decls.

Writers

(setf var-decl-statement-var-decls).

Structure: while
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods
Direct slots
Slot: condition
Package

common-lisp.

Type

js-parser:expression

Readers

while-condition.

Writers

(setf while-condition).

Slot: body
Type

(or js-parser:source-element null)

Readers

while-body.

Writers

(setf while-body).

Structure: with
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods
Direct slots
Slot: scope-object
Type

js-parser:expression

Readers

with-scope-object.

Writers

(setf with-scope-object).

Slot: body
Type

js-parser:source-element

Readers

with-body.

Writers

(setf with-body).


5.2 Internals


Next: , Previous: , Up: Internals   [Contents][Index]

5.2.1 Special variables

Special Variable: *constructor-cache*

Map from structure-type symbol to copy-function symbol

Package

js-parser.

Source

source-transformations.lisp.

Special Variable: *consume-token-goal*
Package

js-parser.

Source

lex-javascript.lisp.

Special Variable: *current-filename*

The name of the file currently being parsed

Package

js-parser.

Source

parse-javascript.lisp.

Special Variable: *in-local-scope*

T when the lexical scope is currently inside a function decl, NIL when the lexical scope is currently the global scope

Package

js-parser.

Source

source-transformations.lisp.

Special Variable: *items-closure-hash-threshold*

The number of elements when items-closure switches to using a hashtable.

Package

jsyacc.

Source

jsyacc.lisp.

Special Variable: *keyword-symbols*

A list of the keyword symbols.

Package

js-parser.

Source

lex-javascript.lisp.

Special Variable: *muffle-conflicts*

When T, yacc warnings about Shift/Reduce and Reduce/Reduce conflicts will be muffled. When NIL, all such conflicts will be reported.
When non-NIL, non-T, a single summary warning will be reported when conflicts exist.

This value should be set to NIL or non-T during grammar
development/debugging (so that we find out about the conflicts), but T
at all other times (so that SBCL won’t drop into the debugger when
we’re trying to load parse-javascript.lisp).

Package

js-parser-system.

Source

js-parser.asd.

Special Variable: *operator-tokens*

These are operators (as distinct from general tokens) that will be built into a special regular expression.

We can’t just use the keys from *symbols-to-tokens*, because the
order that the tokens appear in this list is significant. Specifically, each ’long’ operator must occur before any operator that it is a supersequence of. Eg, ’<<<’ must occur before ’<<’, which must occur before ’<’. ’!=’ must occur before both ’!’ and ’=’.

Package

js-parser.

Source

lex-javascript.lisp.

Special Variable: *restricted-tokens*

Tokens that participate in ’restricted productions’. Value should be either :PRE or :POST. For each of these tokens, the lexer will emit either a :NO-LINE-TERMINATOR or a :LINE-TERMINATOR token depending upon whether the token was preceded/followed by a line-break.

Package

js-parser.

Source

lex-javascript.lisp.

Special Variable: *tokens-to-symbols*

Map from string to token symbol.
Every symbol that the tokenizer will return is in this map.

Package

js-parser.

Source

lex-javascript.lisp.

Special Variable: floating-re

Regular expression for recognizing floating-point literals

Package

js-parser.

Source

lex-javascript.lisp.

Special Variable: integer-re

Regular expression for recognizing integer literals

Package

js-parser.

Source

lex-javascript.lisp.

Special Variable: javascript-script
Package

js-parser.

Source

parse-javascript.lisp.

Special Variable: operator-re

Regular expression for recognizing operators

Package

js-parser.

Source

lex-javascript.lisp.

Special Variable: regexp-re

(Lisp) regular expression for recognizing (Javascript) regular expression literals

Package

js-parser.

Source

lex-javascript.lisp.

Special Variable: string-re

Regular expression for recognizing string literals

Package

js-parser.

Source

lex-javascript.lisp.

Special Variable: undefined-id

Contains the ‘undefined‘ identifier

Package

js-parser.

Source

parse-javascript.lisp.

Special Variable: whitespace-and-comments-re

Regular expression for consuming (and thereby skipping) whitespace and comments

Package

js-parser.

Source

lex-javascript.lisp.


5.2.2 Macros

Macro: aif (test-form then-form &optional else-form)

Anaphoric IF expression; binds IT.

Package

js-parser.

Source

general-utilities.lisp.

Macro: awhen (test-form &body body)

Anaphoric WHEN expression; binds IT.

Package

js-parser.

Source

general-utilities.lisp.

Macro: bind-with-backchannels ((&rest bindings) form &body body)
Package

js-parser.

Source

general-utilities.lisp.

Macro: defelement (name &rest slots)
Package

js-parser.

Source

js-source-model.lisp.

Macro: defparser (parser-name starting-production &body productions)

This macro emulates the Lispworks parsergenerator’s defparser macro, but instead creates output for CL-YACC

Package

js-parser.

Source

parse-javascript-yacc.lisp.

Macro: deftoken (symbol &optional key token-type)

Add a token’s symbol and possibly string to the appropriate lookups.

Different actions will be taken depending upon the TOKEN-TYPE: OPERATOR-TOKENs are infix operators, which are recognized as atomic tokens regardless of whether they are surrounded by whitespace (unlike identifier tokens, for example).
KEYWORDs are reserved strings that can never be used as an identifier. OPERATIONs will never be returned by the lexer, but they are used in the source model in the same place as tokens (ie, in :op-symbol slots), so they are treated as tokens for now.

Package

js-parser.

Source

lex-javascript.lisp.

Macro: forbid-transformation-elements (xform elm-type-list)

Generate DEFMETHOD forms that throw an error if the transformation specified in XFORM is applied to any of the element types in ELM-TYPE-LIST

Package

js-parser.

Source

source-transformations.lisp.

Macro: in-local-scope (&body body)

Execute BODY with *IN-LOCAL-SCOPE* bound to T

Package

js-parser.

Source

source-transformations.lisp.

Macro: re-cond ((string &key start) &rest clauses)

(re-cond (STRING :start START) (REGEXP FORMS*)*
If REGEXP matches STRING, then %S, %E, %SUB-S, and %SUB-E will be bound during execution of FORMS

Package

js-parser.

Source

lexer-macros.lisp.

Macro: when-let ((bind-var test-form) &body body)

Anaphoric WHEN expression that allows the caller to specify the name of the bound variable

Package

js-parser.

Source

general-utilities.lisp.


Next: , Previous: , Up: Internals   [Contents][Index]

5.2.3 Ordinary functions

Function: %copy-item (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Function: %make-grammar (&key name terminals precedence productions %symbols derives-epsilon derives-first derives-first-terminal)
Package

jsyacc.

Source

jsyacc.lisp.

Function: %make-kernel (items)
Package

jsyacc.

Source

jsyacc.lisp.

Function: %make-parser (states goto action)
Package

jsyacc.

Source

jsyacc.lisp.

Function: accept-action-p (object)
Package

jsyacc.

Source

jsyacc.lisp.

Function: action-equal-p (a1 a2)
Package

jsyacc.

Source

jsyacc.lisp.

Function: action-p (object)
Package

jsyacc.

Source

jsyacc.lisp.

Function: add-handler-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf add-handler-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: add-handler-handler (instance)
Writer: (setf add-handler-handler) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

handler.

Function: add-handler-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf add-handler-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: add-handler-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: add-handler-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf add-handler-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: add-handler-thunk-body (instance)
Writer: (setf add-handler-thunk-body) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

thunk-body.

Function: backchannel-signal (channel value)

Signals VALUE on backchannel CHANNEL. Returns T if the message was received.

Package

js-parser.

Source

general-utilities.lisp.

Function: call-expression-p (elm)

Return non-NIL if ELM is a CallExpression, or NIL otherwise.

Package

js-parser.

Source

js-source-model.lisp.

Function: clear-lr1-collection (collection)
Package

jsyacc.

Source

jsyacc.lisp.

Function: coerce-token (lexer terminal)

Force LEXER to interpret the next token as TERMINAL. An error will be raised if that’s not actually possible.

Package

js-parser.

Source

lex-javascript.lisp.

Function: combine-first (f1 s grammar)

FIRST(s1.s) where f1=FIRST(s1).

Package

jsyacc.

Source

jsyacc.lisp.

Function: combine-statements (&rest elm-arguments)

Combine ELM-ARGUMENTS into a single list, stripping out statement-blocks if necessary

Package

js-parser.

Source

js-source-model.lisp.

Function: compute-all-lookaheads (kernels grammar)

Compute the LR(1) lookaheads for all the collections in KERNELS.

Package

jsyacc.

Source

jsyacc.lisp.

Function: compute-goto (kernel symbol grammar)

Compute the kernel of goto(KERNEL, SYMBOL)

Package

jsyacc.

Source

jsyacc.lisp.

Function: compute-kernels (grammar)

Compute the set collections of LR(0) items for GRAMMAR.

Package

jsyacc.

Source

jsyacc.lisp.

Function: compute-lookaheads (kernel grammar &optional propagate-only)

Compute the LR(1) lookaheads for all items in KERNEL. If PROPAGATE-ONLY is true, ignore spontaneous generation.

Package

jsyacc.

Source

jsyacc.lisp.

Function: compute-parsing-tables (kernels grammar &key muffle-conflicts)

Compute the parsing tables for grammar GRAMMAR and transitions KERNELS. PRECEDENCE is as in FIND-PRECEDENCE. MUFFLE-WARNINGS is one of NIL, T, :SOME or a list of the form (sr rr).

Package

jsyacc.

Source

jsyacc.lisp.

Function: consume-token (lexer &optional goal)

Reads the next token from LEXER’s source text (where ’next’ is determined by
the value of LEXER’s cursor).

GOAL is either :regex-goal or :divide-goal, which corresponds to the description of the 2 possible ’goal symbols’ described in 7.0 of the ECMAScript spec. If GOAL is :re-input, a regular expression literal may be lexed. Otherwise, regex literals are parsed as divisions.

The cursor is assumed to point to a non-whitespace
character on entry; on exit points to the first character after the consumed token. Returns a token structure. The token’s terminal will be NIL on end of input.

Package

js-parser.

Source

lex-javascript.lisp.

Function: consume-whitespace (lexer)

Consumes whitespace and comments. Lexer’s cursor is updated to the next non-whitespace character, and its ENCOUNTERED-LINE-TERMINATOR slot is set based upon whether or not the skipped whitespace included a newline. Returns non-NIL if line-terminators were encountered.

Package

js-parser.

Source

lex-javascript.lisp.

Function: continuation-call-args (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf continuation-call-args) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: continuation-call-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf continuation-call-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: continuation-call-fn (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf continuation-call-fn) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: continuation-call-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf continuation-call-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: continuation-call-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: continuation-call-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf continuation-call-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: continuation-function-body (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf continuation-function-body) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: continuation-function-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf continuation-function-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: continuation-function-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf continuation-function-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: continuation-function-name (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf continuation-function-name) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: continuation-function-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: continuation-function-parameters (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf continuation-function-parameters) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: continuation-function-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf continuation-function-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-accept-action (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Function: copy-action (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Function: copy-add-handler (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-array-literal (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-binary-operator (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-break-statement (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-case-clause (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-catch-clause (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-comma-expr (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-conditional (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-continuation-call (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-continuation-function (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-continue-statement (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-default-clause (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-do-statement (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-error-action (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Function: copy-expression (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-finally-clause (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-fn-call (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-for (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-for-in (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-function-decl (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-function-expression (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-goto (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Function: copy-grammar (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Function: copy-identifier (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-if-statement (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-import-decl (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-kernel (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Function: copy-lr0-item (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Function: copy-lr1-item (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Function: copy-new-expr (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-numeric-literal (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-object-literal (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-parser (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Function: copy-production (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Function: copy-property-access (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-re-literal (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-reduce-action (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Function: copy-remove-handler (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-resume-statement (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-return-statement (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-shift-action (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Function: copy-source-element (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-special-value (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-statement-block (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-string-literal (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-suspend-statement (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-switch (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-throw-statement (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-thunk-function (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-token (instance)
Package

js-parser.

Source

lex-javascript.lisp.

Function: copy-try (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-unary-operator (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-var-decl (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-var-decl-statement (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-while (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: copy-with (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: derives-epsilon (symbol grammar &optional seen)

True if symbol derives epsilon.

Package

jsyacc.

Source

jsyacc.lisp.

Function: derives-epsilon* (symbol grammar &optional seen)

Unmemoised version of DERIVES-EPSILON.

Package

jsyacc.

Source

jsyacc.lisp.

Function: derives-first (c grammar &optional seen)

The list of symbols A such that C rm->* A.eta for some eta.

Package

jsyacc.

Source

jsyacc.lisp.

Function: derives-first-terminal (c grammar &optional seen)

The list of terminals a such that C rm->* a.eta, last non-epsilon.

Package

jsyacc.

Source

jsyacc.lisp.

Function: element-end (element)

Returns the end position of source-element or token ELEMENT.

Package

js-parser.

Source

parse-javascript.lisp.

Function: element-start (element)

Returns the start position of source-element or token ELEMENT.

Package

js-parser.

Source

parse-javascript.lisp.

Function: error-action-p (object)
Package

jsyacc.

Source

jsyacc.lisp.

Function: escape-regexp (re-string)
Package

js-parser.

Source

lex-javascript.lisp.

Function: expand-hashtable-to-values (hashtable)

Returns a list of all the values stored in a hashtable.

Package

js-parser.

Source

parse-javascript-yacc.lisp.

Function: find-goto (kernel symbol)
Package

jsyacc.

Source

jsyacc.lisp.

Function: find-precedence (op precedence)

Return the tail of PRECEDENCE starting with the element containing OP. PRECEDENCE is a list of elements of the form (KEYWORD . (op...)).

Package

jsyacc.

Source

jsyacc.lisp.

Function: find-single-terminal (s grammar)

Return the only terminal in S, or NIL if none or multiple.

Package

jsyacc.

Source

jsyacc.lisp.

Function: first-terminals (s grammar)

FIRST(s) without epsilon.

Package

jsyacc.

Source

jsyacc.lisp.

Function: generate-productions (productions)

Used by defparser macro. Take the lispworks list of productions and convert them into CL-YACC versions

Package

js-parser.

Source

parse-javascript-yacc.lisp.

Function: generate-rules-with-optional (rule-spec &optional mask)

Accepts a PARSERGEN rulespec and transforms it by treating each symbol that begins with a #\? character as being optional. The output is a list of one or more rules that exhaust all the present/absent possibilities. This is an internal utility for generating rules for the different grammar rules that are specified with wildcards.

Package

js-parser.

Source

parse-javascript.lisp.

Function: goto-equal-p (g1 g2)
Package

jsyacc.

Source

jsyacc.lisp.

Function: goto-p (object)
Package

jsyacc.

Source

jsyacc.lisp.

Reader: goto-symbol (instance)
Writer: (setf goto-symbol) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

symbol.

Reader: goto-target (instance)
Writer: (setf goto-target) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

target.

Reader: grammar-%symbols (instance)
Writer: (setf grammar-%symbols) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

%symbols.

Reader: grammar-derives-epsilon (instance)
Writer: (setf grammar-derives-epsilon) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

derives-epsilon.

Reader: grammar-derives-first (instance)
Writer: (setf grammar-derives-first) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

derives-first.

Reader: grammar-derives-first-terminal (instance)
Writer: (setf grammar-derives-first-terminal) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

derives-first-terminal.

Function: grammar-discard-memos (grammar)
Package

jsyacc.

Source

jsyacc.lisp.

Function: grammar-epsilon-productions (grammar)
Package

jsyacc.

Source

jsyacc.lisp.

Reader: grammar-name (instance)
Writer: (setf grammar-name) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

name.

Function: grammar-p (object)
Package

jsyacc.

Source

jsyacc.lisp.

Reader: grammar-precedence (instance)
Writer: (setf grammar-precedence) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

precedence.

Reader: grammar-productions (instance)
Writer: (setf grammar-productions) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

productions.

Function: grammar-symbols (grammar)

The set of symbols (both terminal and nonterminal) of GRAMMAR.

Package

jsyacc.

Source

jsyacc.lisp.

Reader: grammar-terminals (instance)
Writer: (setf grammar-terminals) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

terminals.

Function: handle-conflict (a1 a2 grammar action-productions id s &optional muffle-conflicts)

Decide what to do with a conflict between A1 and A2 in state ID on symbol S. Returns three actions: the chosen action, the number of new sr and rr.

Package

jsyacc.

Source

jsyacc.lisp.

Function: idempotent-expression-p (elm)

Return true if ELM is an ’idempotent expression’, ie one which it is safe to add repetitions of

Package

js-parser.

Source

js-source-model.lisp.

Function: import-decl-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf import-decl-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: import-decl-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf import-decl-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: import-decl-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: import-decl-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf import-decl-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: import-decl-type-symbol (instance)
Writer: (setf import-decl-type-symbol) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

type-symbol.

Reader: import-decl-uripath (instance)
Writer: (setf import-decl-uripath) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

uripath.

Function: item-action (item)
Package

jsyacc.

Source

jsyacc.lisp.

Function: item-action-form (item)
Package

jsyacc.

Source

jsyacc.lisp.

Function: item-derives (item)
Package

jsyacc.

Source

jsyacc.lisp.

Function: item-dot-left (item)
Package

jsyacc.

Source

jsyacc.lisp.

Function: item-dot-right (item &optional n)
Package

jsyacc.

Source

jsyacc.lisp.

Function: item-dot-right-p (item)
Package

jsyacc.

Source

jsyacc.lisp.

Function: item-dot-symbol (item)
Package

jsyacc.

Source

jsyacc.lisp.

Function: item-equal-p (i1 i2)

Equality predicate for LR(0) items.

Package

jsyacc.

Source

jsyacc.lisp.

Reader: item-lookahead (instance)
Writer: (setf item-lookahead) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

lookahead.

Reader: item-lookaheads (instance)
Writer: (setf item-lookaheads) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

lookaheads.

Function: item-lr1-equal-p (i1 i2)

Equality predicate for LR(1) items.

Package

jsyacc.

Source

jsyacc.lisp.

Function: item-lr1-hash-value (item)

Returns an object suitable for keying associations of LR1-items.

Package

jsyacc.

Source

jsyacc.lisp.

Function: item-p (object)
Package

jsyacc.

Source

jsyacc.lisp.

Reader: item-position (instance)
Writer: (setf item-position) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

position.

Reader: item-production (instance)
Writer: (setf item-production) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

production.

Function: item-set-equal-p (c1 c2)

Equality predicate for sorted sets of LR(0) items.

Package

jsyacc.

Source

jsyacc.lisp.

Function: item-shift (item &optional n)
Package

jsyacc.

Source

jsyacc.lisp.

Function: item-symbol (item)
Package

jsyacc.

Source

jsyacc.lisp.

Function: item< (i1 i2)

Total strict order on LR(0) items.

Package

jsyacc.

Source

jsyacc.lisp.

Function: items-closure (items grammar)

Compute the closure of a set of LR(1) items.

Package

jsyacc.

Source

jsyacc.lisp.

Reader: kernel-gotos (instance)
Writer: (setf kernel-gotos) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

gotos.

Reader: kernel-id (instance)
Writer: (setf kernel-id) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

id.

Function: kernel-item (kernel)

The item in a singleton set of items.

Package

jsyacc.

Source

jsyacc.lisp.

Reader: kernel-items (instance)
Writer: (setf kernel-items) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

items.

Function: kernel-p (object)
Package

jsyacc.

Source

jsyacc.lisp.

Function: line-terminator-p (c)

Return non-NIL if C is a line-terminator character according to the Javascript spec

Package

js-parser.

Source

lex-javascript.lisp.

Function: lr0-item-p (object)
Package

jsyacc.

Source

jsyacc.lisp.

Function: lr1-add (item collection)

Add ITEM to COLLECTION.

Package

jsyacc.

Source

jsyacc.lisp.

Function: lr1-add-collection (items collection)

Add all the elements of ITEMS to COLLECTION.

Package

jsyacc.

Source

jsyacc.lisp.

Function: lr1-collection-empty-p (collection)
Package

jsyacc.

Source

jsyacc.lisp.

Function: lr1-find (item collection)

Find an LR(1) item equal to ITEM in COLLECTION, or NIL.

Package

jsyacc.

Source

jsyacc.lisp.

Function: lr1-item-p (object)
Package

jsyacc.

Source

jsyacc.lisp.

Function: lr1-item-shift (item &optional n)
Package

jsyacc.

Source

jsyacc.lisp.

Function: make-accept-action (&key)
Package

jsyacc.

Source

jsyacc.lisp.

Function: make-continuation-call (&key label start end fn args)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-continuation-function (&key label start end name parameters body)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-error-action (&key)
Package

jsyacc.

Source

jsyacc.lisp.

Function: make-expression (&key label start end)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-goto (symbol target)
Package

jsyacc.

Source

jsyacc.lisp.

Function: make-hash-table-from-lr1-list (l)
Package

jsyacc.

Source

jsyacc.lisp.

Function: make-item (production position)
Package

jsyacc.

Source

jsyacc.lisp.

Function: make-kernel (items &optional kernels)
Package

jsyacc.

Source

jsyacc.lisp.

Function: make-lexer-function (lexer)

Returns a function of 0 arguments that calls NEXT-TOKEN on LEXER whenever it is called. This is normally the function that gets passed into a parser.

Package

js-parser.

Source

lex-javascript.lisp.

Function: make-lr1-collection (&optional same-kind-as)
Package

jsyacc.

Source

jsyacc.lisp.

Function: make-lr1-item (production position lookahead)
Package

jsyacc.

Source

jsyacc.lisp.

Function: make-reduce-action (symbol length &key action action-form)
Package

jsyacc.

Source

jsyacc.lisp.

Function: make-shift-action (state)
Package

jsyacc.

Source

jsyacc.lisp.

Function: make-thunk-function (&key label start end name parameters body)
Package

js-parser.

Source

js-source-model.lisp.

Function: make-token (&key terminal value start end)
Package

js-parser.

Source

lex-javascript.lisp.

Function: make-var-init (var-name init-value)

Create a VAR-DECL-STATEMENT that initializes a variable named VAR-NAME to INIT-VALUE

Package

js-parser.

Source

js-source-model.lisp.

Function: map-lr1-collection (f collection)

Apply F to all elements of COLLECTION.

Package

jsyacc.

Source

jsyacc.lisp.

Function: maptree (fn tree)

MAPTREE maps a function over a tree of cons cells.
If TREE is NIL, returns NIL.
If TREE is a cons cell, recursively calls MAPTREE on the CAR and CDR and returns a new cons cell whose CAR and CDR are the results.
Otherwise, returns the result of applying FN to TREE.

Package

js-parser.

Source

general-utilities.lisp.

Function: memq (item list)

MEMBER :TEST #’EQ

Package

jsyacc.

Source

jsyacc.lisp.

Function: next-token (lexer)

Returns a token structure containing the next token in the lexing operation represented by LEXER. This token will have a terminal of NIL at end of stream. The next token will be fetched from the unget-stack if that stack is non-empty.

Package

js-parser.

Source

lex-javascript.lisp.

Function: number-kernels (kernels)

Set a unique ID for all kernels in KERNELS.

Package

jsyacc.

Source

jsyacc.lisp.

Function: parse-file (path)

Load the file at PATH and parse it into a js/jw source model

Package

js-parser.

Source

parse-javascript.lisp.

Function: parse-grammar (forms)
Package

jsyacc.

Source

jsyacc.lisp.

Function: parse-javascript-integer (integer-str &key start end)

Parse integer literals, taking account of 0x and 0 radix-specifiers

Package

js-parser.

Source

lex-javascript.lisp.

Function: parse-production (form)
Package

jsyacc.

Source

jsyacc.lisp.

Reader: parser-action (instance)
Writer: (setf parser-action) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

action.

Reader: parser-goto (instance)
Writer: (setf parser-goto) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

goto.

Function: parser-p (object)
Package

jsyacc.

Source

jsyacc.lisp.

Reader: parser-states (instance)
Writer: (setf parser-states) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

states.

Function: pathnames-equal (path1 path2)

Return non-NIL if PATH1 and PATH2 are equivalent. This function avoids some of the
complexity that pathnames can entail by comparing the namestrings of the two paths
rather than the paths themselves. That way we don’t have to worry about spurious distinctions between :UNSPECIFIED and NIL, :NEWEST and NIL and some actual version number, etc.

Package

js-parser.

Source

general-utilities.lisp.

Function: position-to-line/column (text index)

Returns a cons cell containing the 1-based row and column for the character at INDEX in TEXT.

Package

js-parser.

Source

lex-javascript.lisp.

Function: postpend (list-arg atom-arg)

Appends a list containing ATOM-ARG to LIST-ARG. eg: (POSTPEND ’(1 2) 3) ===> ’(1 2 3)

Package

js-parser.

Source

general-utilities.lisp.

Function: prefix-p (string prefix)

return: whether prefix is a prefix of the string.

Package

js-parser.

Source

general-utilities.lisp.

Function: print-action (a s d)
Package

jsyacc.

Source

jsyacc.lisp.

Function: print-derives-epsilon (grammar &optional stream)
Package

jsyacc.

Source

jsyacc.lisp.

Function: print-first-terminals (grammar &optional stream)

Print FIRST (without epsilon) for all symbols of GRAMMAR.

Package

jsyacc.

Source

jsyacc.lisp.

Function: print-goto-graph (kernels &optional stream)

Print the goto graph defined by KERNELS.

Package

jsyacc.

Source

jsyacc.lisp.

Function: print-item (i s d)
Package

jsyacc.

Source

jsyacc.lisp.

Function: print-kernel (k s d)
Package

jsyacc.

Source

jsyacc.lisp.

Function: print-production (p s d)
Package

jsyacc.

Source

jsyacc.lisp.

Function: print-states (kernels lookaheads &optional stream)
Package

jsyacc.

Source

jsyacc.lisp.

Reader: production-action (instance)
Writer: (setf production-action) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

action.

Reader: production-action-form (instance)
Writer: (setf production-action-form) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

action-form.

Reader: production-derives (instance)
Writer: (setf production-derives) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

derives.

Function: production-equal-p (p1 p2)

Equality predicate for productions within a single grammar

Package

jsyacc.

Source

jsyacc.lisp.

Reader: production-id (instance)
Writer: (setf production-id) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

id.

Function: production-p (object)
Package

jsyacc.

Source

jsyacc.lisp.

Reader: production-symbol (instance)
Writer: (setf production-symbol) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

symbol.

Function: production< (p1 p2)

Total order on productions within a single grammar

Package

jsyacc.

Source

jsyacc.lisp.

Function: push-token (lexer token &optional encountered-line-terminator)

Push a token onto the top of LEXER’s unget stack. The next token fetched by NEXT-TOKEN will be the pushed token. The state of the ENCOUNTERED-LINE-TERMINATOR flag is also saved and will be restored by the next NEXT-TOKEN call.

Package

js-parser.

Source

lex-javascript.lisp.

Function: re-cond-clause (string start block-name clause)
Package

js-parser.

Source

lexer-macros.lisp.

Function: read-asdf-component-text (component-path)

Returns the contents of a file that is a component of a currently-loaded asdf system. COMPONENT-PATH is a path describing the location of the component to read. It should have at least 2 elements.
The first element is a symbol naming a system.
The last element is a string naming a component.
There may be intermediate strings naming intermediate modules. Eg:

(:JS-ON-CL-TESTS "tests" "test-cps-transformation")

names the test-cps-transformation component, which is part of the tests module, which is part of the :JS-ON-CL-TESTS system.

Package

js-parser.

Source

general-utilities.lisp.

Function: read-entire-file (path)

Reads the entire contents of the file located at PATH and returns it as a string

Package

js-parser.

Source

general-utilities.lisp.

Reader: reduce-action-action (instance)
Writer: (setf reduce-action-action) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

action.

Reader: reduce-action-action-form (instance)
Writer: (setf reduce-action-action-form) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

action-form.

Reader: reduce-action-length (instance)
Writer: (setf reduce-action-length) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

length.

Function: reduce-action-p (object)
Package

jsyacc.

Source

jsyacc.lisp.

Reader: reduce-action-symbol (instance)
Writer: (setf reduce-action-symbol) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

symbol.

Function: relative-first (s a grammar &optional seen)

Union of FIRST(eta) for all the eta s.t. S rm->* Aeta.

Package

jsyacc.

Source

jsyacc.lisp.

Function: relative-first-sequence (s a grammar &optional seen)

Sequence version of RELATIVE-FIRST.

Package

jsyacc.

Source

jsyacc.lisp.

Function: remove-handler-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf remove-handler-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: remove-handler-handler (instance)
Writer: (setf remove-handler-handler) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

handler.

Function: remove-handler-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf remove-handler-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: remove-handler-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: remove-handler-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf remove-handler-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: remove-handler-thunk-body (instance)
Writer: (setf remove-handler-thunk-body) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

thunk-body.

Function: replace-special-variables (leaf)

Replace $$n with (token-value (nth n-1 expr)) and $n with (nth n-1 expr)

Package

js-parser.

Source

parse-javascript-yacc.lisp.

Function: required-argument ()
Package

jsyacc.

Source

jsyacc.lisp.

Reader: resume-statement-arg (instance)
Writer: (setf resume-statement-arg) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

arg.

Function: resume-statement-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf resume-statement-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: resume-statement-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf resume-statement-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: resume-statement-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: resume-statement-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf resume-statement-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Reader: resume-statement-target (instance)
Writer: (setf resume-statement-target) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Target Slot

target.

Function: sequence-derives-epsilon (sequence grammar)

Sequence version of DERIVES-EPSILON*.

Package

jsyacc.

Source

jsyacc.lisp.

Function: sequence-derives-first (sequence grammar &optional seen)

Sequence version of DERIVES-FIRST.

Package

jsyacc.

Source

jsyacc.lisp.

Function: sequence-derives-first-terminal (sequence grammar &optional seen)

Sequence version of DERIVES-FIRST-TERMINAL.

Package

jsyacc.

Source

jsyacc.lisp.

Function: sequence-first (s grammar)

FIRST(s).

Package

jsyacc.

Source

jsyacc.lisp.

Function: sequence-first-terminals (s grammar)

Sequence version of FIRST-TERMINALS.

Package

jsyacc.

Source

jsyacc.lisp.

Function: set-cursor (lexer new-pos)

Sets the cursor of the lexer to the position specified by NEW-POS

Package

js-parser.

Source

lex-javascript.lisp.

Function: shift-action-p (object)
Package

jsyacc.

Source

jsyacc.lisp.

Reader: shift-action-state (instance)
Writer: (setf shift-action-state) (instance)
Package

jsyacc.

Source

jsyacc.lisp.

Target Slot

state.

Function: single-statement (&rest elm-arguments)

Takes a list of source elements and distills them into a single statement. If there is only one statement once all the lists have been flattened and the statement-blocks pulled apart, then returns that single statement. Otherwise, wraps the entire flattened sequence in a statement-block.

Package

js-parser.

Source

js-source-model.lisp.

Function: suspend-statement-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf suspend-statement-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: suspend-statement-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf suspend-statement-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: suspend-statement-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: suspend-statement-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf suspend-statement-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: terminal-p (symbol grammar)
Package

jsyacc.

Source

jsyacc.lisp.

Function: thunk-function-body (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf thunk-function-body) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: thunk-function-end (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf thunk-function-end) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: thunk-function-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf thunk-function-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: thunk-function-name (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf thunk-function-name) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: thunk-function-p (object)
Package

js-parser.

Source

js-source-model.lisp.

Function: thunk-function-parameters (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf thunk-function-parameters) (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: thunk-function-start (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf thunk-function-start) (instance)
Package

js-parser.

Source

js-source-model.lisp.

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

js-parser.

Source

lex-javascript.lisp.

Target Slot

end.

Function: token-p (object)
Package

js-parser.

Source

lex-javascript.lisp.

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

js-parser.

Source

lex-javascript.lisp.

Target Slot

start.

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

js-parser.

Source

lex-javascript.lisp.

Target Slot

terminal.

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

js-parser.

Source

lex-javascript.lisp.

Target Slot

value.

Function: unescape-regexp (re-string)
Package

js-parser.

Source

lex-javascript.lisp.

Function: unescape-string-literal-value (value)

Given the inside of a string literal with escaped characters like ’, newlines, etc. returns a decoded value.

Package

js-parser.

Source

lex-javascript.lisp.

Function: with-label (instance)
Package

js-parser.

Source

js-source-model.lisp.

Function: (setf with-label) (instance)
Package

js-parser.

Source

js-source-model.lisp.


Next: , Previous: , Up: Internals   [Contents][Index]

5.2.4 Generic functions

Generic Reader: channel-name (condition)
Generic Writer: (setf channel-name) (condition)
Package

js-parser.

Methods
Reader Method: channel-name ((condition backchannel-message))
Writer Method: (setf channel-name) ((condition backchannel-message))
Source

general-utilities.lisp.

Target Slot

channel-name.

Generic Function: collect-in-scope (elm target-type)

Finds and returns a list of all elements of TARGET-TYPE in the same scope as ELM. Does not recurse into function-decl or function-expression elements. So for example, searching for function-decls in this code:

var x = 10;
function foo(x) { function bar(y) { return 10; } return bar(x); }

FOO would be returned but BAR would not, since the decl of BAR is in an innermore scope (namely, FOO’s body).

Package

js-parser.

Source

source-transformations.lisp.

Methods
Method: collect-in-scope :around (elm target-type)
Method: collect-in-scope ((elm object-literal) target-type)
Method: collect-in-scope ((elm function-expression) target-type)
Method: collect-in-scope ((elm function-decl) target-type)
Method: collect-in-scope ((elm source-element) target-type)
Method: collect-in-scope ((elm-list list) target-type)
Method: collect-in-scope (elm target-type)
Generic Reader: column (condition)
Package

js-parser.

Methods
Reader Method: column ((condition positioned-condition))
Source

conditions.lisp.

Target Slot

column.

Generic Reader: conflict-summary-warning-reduce-reduce (condition)
Package

jsyacc.

Methods
Reader Method: conflict-summary-warning-reduce-reduce ((condition conflict-summary-warning))
Source

jsyacc.lisp.

Target Slot

reduce-reduce.

Generic Reader: conflict-summary-warning-shift-reduce (condition)
Package

jsyacc.

Methods
Reader Method: conflict-summary-warning-shift-reduce ((condition conflict-summary-warning))
Source

jsyacc.lisp.

Target Slot

shift-reduce.

Generic Reader: conflict-warning-kind (condition)
Package

jsyacc.

Methods
Reader Method: conflict-warning-kind ((condition conflict-warning))
Source

jsyacc.lisp.

Target Slot

kind.

Generic Reader: conflict-warning-state (condition)
Package

jsyacc.

Methods
Reader Method: conflict-warning-state ((condition conflict-warning))
Source

jsyacc.lisp.

Target Slot

state.

Generic Reader: conflict-warning-terminal (condition)
Package

jsyacc.

Methods
Reader Method: conflict-warning-terminal ((condition conflict-warning))
Source

jsyacc.lisp.

Target Slot

terminal.

Generic Reader: cursor (object)
Package

js-parser.

Methods
Reader Method: cursor ((javascript-lexer javascript-lexer))

automatically generated reader method

Source

lex-javascript.lisp.

Target Slot

cursor.

Generic Writer: (setf cursor) (object)
Package

js-parser.

Methods
Writer Method: (setf cursor) ((javascript-lexer javascript-lexer))

automatically generated writer method

Source

lex-javascript.lisp.

Target Slot

cursor.

Generic Function: elm-associativity (operator-or-elm)

Returns either :LEFT, :RIGHT, or NIL to indicate the associativity of the operator represented by OP-SYMBOL-OR-ELM (representing left-, right-, and no-associativity respectively.

Package

js-parser.

Source

js-source-model.lisp.

Methods
Method: elm-associativity ((operator-or-elm new-expr))
Method: elm-associativity ((operator-or-elm property-access))
Method: elm-associativity ((operator-or-elm fn-call))
Method: elm-associativity ((operator-or-elm binary-operator))
Method: elm-associativity (operator-or-elm)
Generic Function: elm-precedence (elm)

Returns an integer specifying the precedence of the source element ELM. Smaller numbers represent higher precedence. The precedence numbers have no significance except relative to each other.

Package

js-parser.

Source

js-source-model.lisp.

Methods
Method: elm-precedence ((elm comma-expr))
Method: elm-precedence ((elm conditional))
Method: elm-precedence ((elm binary-operator))
Method: elm-precedence ((elm unary-operator))
Method: elm-precedence ((elm function-expression))
Method: elm-precedence ((elm property-access))
Method: elm-precedence ((elm fn-call))
Method: elm-precedence ((elm new-expr))
Method: elm-precedence ((elm source-element))
Generic Reader: encountered-line-terminator (object)
Package

js-parser.

Methods
Reader Method: encountered-line-terminator ((javascript-lexer javascript-lexer))

automatically generated reader method

Source

lex-javascript.lisp.

Target Slot

encountered-line-terminator.

Generic Writer: (setf encountered-line-terminator) (object)
Package

js-parser.

Methods
Writer Method: (setf encountered-line-terminator) ((javascript-lexer javascript-lexer))

automatically generated writer method

Source

lex-javascript.lisp.

Target Slot

encountered-line-terminator.

Generic Reader: expected-terminals (condition)
Package

js-parser.

Methods
Reader Method: expected-terminals ((condition syntax-error))
Source

conditions.lisp.

Target Slot

expected-terminals.

Generic Reader: filename (condition)
Package

js-parser.

Methods
Reader Method: filename ((condition positioned-condition))
Source

conditions.lisp.

Target Slot

filename.

Generic Reader: import-uripath (condition)
Package

js-parser.

Methods
Reader Method: import-uripath ((condition missing-import))
Source

conditions.lisp.

Target Slot

import-uripath.

Generic Reader: message-value (condition)
Generic Writer: (setf message-value) (condition)
Package

js-parser.

Methods
Reader Method: message-value ((condition backchannel-message))
Writer Method: (setf message-value) ((condition backchannel-message))
Source

general-utilities.lisp.

Target Slot

message-value.

Generic Reader: parent-uripath (condition)
Package

js-parser.

Methods
Reader Method: parent-uripath ((condition missing-import))
Source

conditions.lisp.

Target Slot

parent-uripath.

Generic Reader: pos (condition)
Package

js-parser.

Methods
Reader Method: pos ((condition positioned-condition))
Source

conditions.lisp.

Target Slot

pos.

Generic Reader: row (condition)
Package

js-parser.

Methods
Reader Method: row ((condition positioned-condition))
Source

conditions.lisp.

Target Slot

row.

Generic Reader: text (object)
Package

js-parser.

Methods
Reader Method: text ((javascript-lexer javascript-lexer))

automatically generated reader method

Source

lex-javascript.lisp.

Target Slot

text.

Generic Reader: token (condition)
Package

js-parser.

Methods
Reader Method: token ((condition syntax-error))
Source

conditions.lisp.

Target Slot

token.

Generic Function: transform (xform elm)

Accepts a transformation name (symbol) and a source element, and returns a new source element that has been transformed in some way. Methods should /not/ perform destructive updates on the provided source-element.

Package

js-parser.

Source

source-transformations.lisp.

Methods
Method: transform (xform (elm object-literal))
Method: transform (xform (elm try))
Method: transform (xform (elm with))
Method: transform (xform (elm for-in))
Method: transform (xform (elm for))
Method: transform (xform (elm do-statement))
Method: transform (xform (elm while))
Method: transform (xform (elm if-statement))
Method: transform (xform (elm-list list))
Method: transform (xform (elm source-element))
Method: transform (xform elm)
Generic Reader: unget-stack (object)
Package

js-parser.

Methods
Reader Method: unget-stack ((javascript-lexer javascript-lexer))

automatically generated reader method

Source

lex-javascript.lisp.

Target Slot

unget-stack.

Generic Writer: (setf unget-stack) (object)
Package

js-parser.

Methods
Writer Method: (setf unget-stack) ((javascript-lexer javascript-lexer))

automatically generated writer method

Source

lex-javascript.lisp.

Target Slot

unget-stack.


Next: , Previous: , Up: Internals   [Contents][Index]

5.2.5 Conditions

Condition: backchannel-message

A condition that indicates that a function further down the call chain has a message to pass back. BACKCHANNEL-MESSAGE should never be directly instantiated or used; use BIND-WITH-BACKCHANNELS and BACKCHANNEL-SIGNAL instead.

Package

js-parser.

Source

general-utilities.lisp.

Direct superclasses

condition.

Direct methods
Direct slots
Slot: channel-name
Initargs

:channel-name

Readers

channel-name.

Writers

(setf channel-name).

Slot: message-value
Initargs

:message-value

Readers

message-value.

Writers

(setf message-value).

Condition: conflict-summary-warning
Package

jsyacc.

Source

jsyacc.lisp.

Direct superclasses

warning.

Direct methods
Direct slots
Slot: shift-reduce
Initargs

:shift-reduce

Readers

conflict-summary-warning-shift-reduce.

Writers

This slot is read-only.

Slot: reduce-reduce
Initargs

:reduce-reduce

Readers

conflict-summary-warning-reduce-reduce.

Writers

This slot is read-only.

Condition: conflict-warning
Package

jsyacc.

Source

jsyacc.lisp.

Direct superclasses

simple-warning.

Direct methods
Direct slots
Slot: kind
Initargs

:kind

Readers

conflict-warning-kind.

Writers

This slot is read-only.

Slot: state
Initargs

:state

Readers

conflict-warning-state.

Writers

This slot is read-only.

Slot: terminal
Initargs

:terminal

Readers

conflict-warning-terminal.

Writers

This slot is read-only.

Condition: missing-import

Indicates that an import could not be located

Package

js-parser.

Source

conditions.lisp.

Direct superclasses
Direct methods
Direct slots
Slot: parent-uripath
Initargs

:parent-uripath

Readers

parent-uripath.

Writers

This slot is read-only.

Slot: import-uripath
Initargs

:import-uripath

Readers

import-uripath.

Writers

This slot is read-only.

Condition: positioned-condition

Represents a condition that has a source position associated with it

Package

js-parser.

Source

conditions.lisp.

Direct superclasses

condition.

Direct subclasses
Direct methods
Direct slots
Slot: filename
Initform

(quote nil)

Initargs

:filename

Readers

filename.

Writers

This slot is read-only.

Slot: pos
Initargs

:pos

Readers

pos.

Writers

This slot is read-only.

Slot: row
Initargs

:row

Readers

row.

Writers

This slot is read-only.

Slot: column
Initargs

:column

Readers

column.

Writers

This slot is read-only.


Next: , Previous: , Up: Internals   [Contents][Index]

5.2.6 Structures

Structure: accept-action
Package

jsyacc.

Source

jsyacc.lisp.

Direct superclasses

action.

Direct methods

make-load-form.

Structure: action
Package

jsyacc.

Source

jsyacc.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct methods

print-object.

Structure: add-handler

Indicates that a new handler should be added to the handler stack at this point

Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods

make-load-form.

Direct slots
Slot: handler
Type

(or js-parser:identifier js-parser:function-expression)

Readers

add-handler-handler.

Writers

(setf add-handler-handler).

Slot: thunk-body
Type

(or (cons js-parser:source-element) null)

Readers

add-handler-thunk-body.

Writers

(setf add-handler-thunk-body).

Structure: continuation-call

A call to a continuation (as opposed to a call to any other sort of function)

Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

fn-call.

Direct methods

make-load-form.

Structure: continuation-function

A function expression that is used as a continuation

Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

function-expression.

Direct methods

make-load-form.

Structure: error-action
Package

jsyacc.

Source

jsyacc.lisp.

Direct superclasses

action.

Direct methods

make-load-form.

Structure: goto
Package

jsyacc.

Source

jsyacc.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: symbol
Package

common-lisp.

Type

symbol

Readers

goto-symbol.

Writers

(setf goto-symbol).

Slot: target
Type

jsyacc::kernel

Initform

(jsyacc::required-argument)

Readers

goto-target.

Writers

(setf goto-target).

Structure: grammar
Package

jsyacc.

Source

jsyacc.lisp.

Direct superclasses

structure-object.

Direct methods

make-load-form.

Direct slots
Slot: name
Readers

grammar-name.

Writers

(setf grammar-name).

Slot: terminals
Type

list

Initform

(quote nil)

Readers

grammar-terminals.

Writers

(setf grammar-terminals).

Slot: precedence
Type

list

Initform

(quote nil)

Readers

grammar-precedence.

Writers

(setf grammar-precedence).

Slot: productions
Type

list

Initform

(quote nil)

Readers

grammar-productions.

Writers

(setf grammar-productions).

Slot: %symbols
Type

(or list (member :undefined))

Initform

:undefined

Readers

grammar-%symbols.

Writers

(setf grammar-%symbols).

Slot: derives-epsilon
Type

list

Initform

(quote nil)

Readers

grammar-derives-epsilon.

Writers

(setf grammar-derives-epsilon).

Slot: derives-first
Type

list

Initform

(quote nil)

Readers

grammar-derives-first.

Writers

(setf grammar-derives-first).

Slot: derives-first-terminal
Type

list

Initform

(quote nil)

Readers

grammar-derives-first-terminal.

Writers

(setf grammar-derives-first-terminal).

Structure: import-decl
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods

make-load-form.

Direct slots
Slot: type-symbol
Type

symbol

Readers

import-decl-type-symbol.

Writers

(setf import-decl-type-symbol).

Slot: uripath
Type

string

Readers

import-decl-uripath.

Writers

(setf import-decl-uripath).

Structure: item
Package

jsyacc.

Source

jsyacc.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct methods

print-object.

Direct slots
Slot: production
Type

jsyacc::production

Initform

(jsyacc::required-argument)

Readers

item-production.

Writers

(setf item-production).

Slot: position
Package

common-lisp.

Type

jsyacc::index

Initform

(jsyacc::required-argument)

Readers

item-position.

Writers

(setf item-position).

Structure: kernel
Package

jsyacc.

Source

jsyacc.lisp.

Direct superclasses

structure-object.

Direct methods

print-object.

Direct slots
Slot: id
Type

(or null jsyacc::index)

Readers

kernel-id.

Writers

(setf kernel-id).

Slot: items
Type

list

Initform

(quote nil)

Readers

kernel-items.

Writers

(setf kernel-items).

Slot: gotos
Type

list

Initform

(quote nil)

Readers

kernel-gotos.

Writers

(setf kernel-gotos).

Structure: lr0-item
Package

jsyacc.

Source

jsyacc.lisp.

Direct superclasses

item.

Direct slots
Slot: lookaheads
Type

list

Initform

(quote nil)

Readers

item-lookaheads.

Writers

(setf item-lookaheads).

Structure: lr1-item
Package

jsyacc.

Source

jsyacc.lisp.

Direct superclasses

item.

Direct slots
Slot: lookahead
Type

symbol

Initform

(jsyacc::required-argument)

Readers

item-lookahead.

Writers

(setf item-lookahead).

Structure: parser
Package

jsyacc.

Source

jsyacc.lisp.

Direct superclasses

structure-object.

Direct methods

make-load-form.

Direct slots
Slot: states
Type

jsyacc::index

Initform

(jsyacc::required-argument)

Readers

parser-states.

Writers

(setf parser-states).

Slot: goto
Type

simple-vector

Initform

(jsyacc::required-argument)

Readers

parser-goto.

Writers

(setf parser-goto).

Slot: action
Type

simple-vector

Initform

(jsyacc::required-argument)

Readers

parser-action.

Writers

(setf parser-action).

Structure: production
Package

jsyacc.

Source

jsyacc.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: id
Type

(or null jsyacc::index)

Readers

production-id.

Writers

(setf production-id).

Slot: symbol
Package

common-lisp.

Type

symbol

Initform

(jsyacc::required-argument)

Readers

production-symbol.

Writers

(setf production-symbol).

Slot: derives
Type

list

Initform

(jsyacc::required-argument)

Readers

production-derives.

Writers

(setf production-derives).

Slot: action
Type

function

Initform

(function list)

Readers

production-action.

Writers

(setf production-action).

Slot: action-form
Readers

production-action-form.

Writers

(setf production-action-form).

Structure: reduce-action
Package

jsyacc.

Source

jsyacc.lisp.

Direct superclasses

action.

Direct methods

make-load-form.

Direct slots
Slot: symbol
Package

common-lisp.

Type

symbol

Initform

(jsyacc::required-argument)

Readers

reduce-action-symbol.

Writers

(setf reduce-action-symbol).

Slot: length
Package

common-lisp.

Type

jsyacc::index

Initform

(jsyacc::required-argument)

Readers

reduce-action-length.

Writers

(setf reduce-action-length).

Slot: action
Type

function

Initform

(function list)

Readers

reduce-action-action.

Writers

(setf reduce-action-action).

Slot: action-form
Readers

reduce-action-action-form.

Writers

(setf reduce-action-action-form).

Structure: remove-handler

Indicates that a handler should be removed from the top of the handler stack at this point

Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods

make-load-form.

Direct slots
Slot: handler
Type

(or js-parser:identifier js-parser:function-expression)

Readers

remove-handler-handler.

Writers

(setf remove-handler-handler).

Slot: thunk-body
Type

(or (cons js-parser:source-element) null)

Readers

remove-handler-thunk-body.

Writers

(setf remove-handler-thunk-body).

Structure: resume-statement
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods

make-load-form.

Direct slots
Slot: target
Type

js-parser:expression

Readers

resume-statement-target.

Writers

(setf resume-statement-target).

Slot: arg
Type

(or js-parser:expression null)

Readers

resume-statement-arg.

Writers

(setf resume-statement-arg).

Structure: shift-action
Package

jsyacc.

Source

jsyacc.lisp.

Direct superclasses

action.

Direct methods

make-load-form.

Direct slots
Slot: state
Type

jsyacc::index

Initform

(jsyacc::required-argument)

Readers

shift-action-state.

Writers

(setf shift-action-state).

Structure: suspend-statement
Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

source-element.

Direct methods

make-load-form.

Structure: thunk-function

A function expression that is used as a thunk in a boxed trampoline result

Package

js-parser.

Source

js-source-model.lisp.

Direct superclasses

function-expression.

Direct methods

make-load-form.

Structure: token

Represents a token returned by the lexer

Package

js-parser.

Source

lex-javascript.lisp.

Direct superclasses

structure-object.

Direct methods

make-load-form.

Direct slots
Slot: terminal
Type

symbol

Readers

token-terminal.

Writers

(setf token-terminal).

Slot: value
Type

(or number string (cons string string) null)

Readers

token-value.

Writers

(setf token-value).

Slot: start
Type

(or number null)

Readers

token-start.

Writers

(setf token-start).

Slot: end
Type

(or number null)

Readers

token-end.

Writers

(setf token-end).


Next: , Previous: , Up: Internals   [Contents][Index]

5.2.7 Classes

Class: javascript-lexer

Represents the current state of a lexing operation

Package

js-parser.

Source

lex-javascript.lisp.

Direct methods
Direct slots
Slot: cursor
Initform

0

Readers

cursor.

Writers

(setf cursor).

Slot: text
Initargs

:text

Readers

text.

Writers

This slot is read-only.

Slot: unget-stack
Readers

unget-stack.

Writers

(setf unget-stack).

Slot: encountered-line-terminator
Readers

encountered-line-terminator.

Writers

(setf encountered-line-terminator).


Previous: , Up: Internals   [Contents][Index]

5.2.8 Types

Type: index ()
Package

jsyacc.

Source

jsyacc.lisp.

Type: lr1-collection ()
Package

jsyacc.

Source

jsyacc.lisp.

Type: signed-index ()
Package

jsyacc.

Source

jsyacc.lisp.


Appendix A Indexes


Next: , Previous: , Up: Indexes   [Contents][Index]

A.1 Concepts


Next: , Previous: , Up: Indexes   [Contents][Index]

A.2 Functions

Jump to:   %   (  
A   B   C   D   E   F   G   H   I   K   L   M   N   O   P   R   S   T   U   V   W   Y  
Index Entry  Section

%
%copy-item: Private ordinary functions
%make-grammar: Private ordinary functions
%make-kernel: Private ordinary functions
%make-parser: Private ordinary functions

(
(setf add-handler-end): Private ordinary functions
(setf add-handler-handler): Private ordinary functions
(setf add-handler-label): Private ordinary functions
(setf add-handler-start): Private ordinary functions
(setf add-handler-thunk-body): Private ordinary functions
(setf array-literal-elements): Public ordinary functions
(setf array-literal-end): Public ordinary functions
(setf array-literal-label): Public ordinary functions
(setf array-literal-start): Public ordinary functions
(setf binary-operator-end): Public ordinary functions
(setf binary-operator-label): Public ordinary functions
(setf binary-operator-left-arg): Public ordinary functions
(setf binary-operator-op-symbol): Public ordinary functions
(setf binary-operator-right-arg): Public ordinary functions
(setf binary-operator-start): Public ordinary functions
(setf break-statement-end): Public ordinary functions
(setf break-statement-label): Public ordinary functions
(setf break-statement-start): Public ordinary functions
(setf break-statement-target-label): Public ordinary functions
(setf case-clause-body): Public ordinary functions
(setf case-clause-end): Public ordinary functions
(setf case-clause-label): Public ordinary functions
(setf case-clause-start): Public ordinary functions
(setf case-clause-value): Public ordinary functions
(setf catch-clause-binding): Public ordinary functions
(setf catch-clause-body): Public ordinary functions
(setf catch-clause-end): Public ordinary functions
(setf catch-clause-label): Public ordinary functions
(setf catch-clause-start): Public ordinary functions
(setf channel-name): Private generic functions
(setf channel-name): Private generic functions
(setf comma-expr-end): Public ordinary functions
(setf comma-expr-exprs): Public ordinary functions
(setf comma-expr-label): Public ordinary functions
(setf comma-expr-start): Public ordinary functions
(setf conditional-condition): Public ordinary functions
(setf conditional-end): Public ordinary functions
(setf conditional-false-arg): Public ordinary functions
(setf conditional-label): Public ordinary functions
(setf conditional-start): Public ordinary functions
(setf conditional-true-arg): Public ordinary functions
(setf continuation-call-args): Private ordinary functions
(setf continuation-call-end): Private ordinary functions
(setf continuation-call-fn): Private ordinary functions
(setf continuation-call-label): Private ordinary functions
(setf continuation-call-start): Private ordinary functions
(setf continuation-function-body): Private ordinary functions
(setf continuation-function-end): Private ordinary functions
(setf continuation-function-label): Private ordinary functions
(setf continuation-function-name): Private ordinary functions
(setf continuation-function-parameters): Private ordinary functions
(setf continuation-function-start): Private ordinary functions
(setf continue-statement-end): Public ordinary functions
(setf continue-statement-label): Public ordinary functions
(setf continue-statement-start): Public ordinary functions
(setf continue-statement-target-label): Public ordinary functions
(setf cursor): Private generic functions
(setf cursor): Private generic functions
(setf default-clause-body): Public ordinary functions
(setf default-clause-end): Public ordinary functions
(setf default-clause-label): Public ordinary functions
(setf default-clause-start): Public ordinary functions
(setf do-statement-body): Public ordinary functions
(setf do-statement-condition): Public ordinary functions
(setf do-statement-end): Public ordinary functions
(setf do-statement-label): Public ordinary functions
(setf do-statement-start): Public ordinary functions
(setf encountered-line-terminator): Private generic functions
(setf encountered-line-terminator): Private generic functions
(setf expression-end): Public ordinary functions
(setf expression-label): Public ordinary functions
(setf expression-start): Public ordinary functions
(setf finally-clause-body): Public ordinary functions
(setf finally-clause-end): Public ordinary functions
(setf finally-clause-label): Public ordinary functions
(setf finally-clause-start): Public ordinary functions
(setf fn-call-args): Public ordinary functions
(setf fn-call-end): Public ordinary functions
(setf fn-call-fn): Public ordinary functions
(setf fn-call-label): Public ordinary functions
(setf fn-call-start): Public ordinary functions
(setf for-body): Public ordinary functions
(setf for-condition): Public ordinary functions
(setf for-end): Public ordinary functions
(setf for-in-binding): Public ordinary functions
(setf for-in-body): Public ordinary functions
(setf for-in-collection): Public ordinary functions
(setf for-in-end): Public ordinary functions
(setf for-in-label): Public ordinary functions
(setf for-in-start): Public ordinary functions
(setf for-initializer): Public ordinary functions
(setf for-label): Public ordinary functions
(setf for-start): Public ordinary functions
(setf for-step): Public ordinary functions
(setf function-decl-body): Public ordinary functions
(setf function-decl-end): Public ordinary functions
(setf function-decl-label): Public ordinary functions
(setf function-decl-name): Public ordinary functions
(setf function-decl-parameters): Public ordinary functions
(setf function-decl-start): Public ordinary functions
(setf function-expression-body): Public ordinary functions
(setf function-expression-end): Public ordinary functions
(setf function-expression-label): Public ordinary functions
(setf function-expression-name): Public ordinary functions
(setf function-expression-parameters): Public ordinary functions
(setf function-expression-start): Public ordinary functions
(setf goto-symbol): Private ordinary functions
(setf goto-target): Private ordinary functions
(setf grammar-%symbols): Private ordinary functions
(setf grammar-derives-epsilon): Private ordinary functions
(setf grammar-derives-first): Private ordinary functions
(setf grammar-derives-first-terminal): Private ordinary functions
(setf grammar-name): Private ordinary functions
(setf grammar-precedence): Private ordinary functions
(setf grammar-productions): Private ordinary functions
(setf grammar-terminals): Private ordinary functions
(setf identifier-end): Public ordinary functions
(setf identifier-label): Public ordinary functions
(setf identifier-name): Public ordinary functions
(setf identifier-start): Public ordinary functions
(setf if-statement-condition): Public ordinary functions
(setf if-statement-else-statement): Public ordinary functions
(setf if-statement-end): Public ordinary functions
(setf if-statement-label): Public ordinary functions
(setf if-statement-start): Public ordinary functions
(setf if-statement-then-statement): Public ordinary functions
(setf import-decl-end): Private ordinary functions
(setf import-decl-label): Private ordinary functions
(setf import-decl-start): Private ordinary functions
(setf import-decl-type-symbol): Private ordinary functions
(setf import-decl-uripath): Private ordinary functions
(setf item-lookahead): Private ordinary functions
(setf item-lookaheads): Private ordinary functions
(setf item-position): Private ordinary functions
(setf item-production): Private ordinary functions
(setf kernel-gotos): Private ordinary functions
(setf kernel-id): Private ordinary functions
(setf kernel-items): Private ordinary functions
(setf message-value): Private generic functions
(setf message-value): Private generic functions
(setf new-expr-args): Public ordinary functions
(setf new-expr-constructor): Public ordinary functions
(setf new-expr-end): Public ordinary functions
(setf new-expr-label): Public ordinary functions
(setf new-expr-start): Public ordinary functions
(setf numeric-literal-end): Public ordinary functions
(setf numeric-literal-label): Public ordinary functions
(setf numeric-literal-start): Public ordinary functions
(setf numeric-literal-value): Public ordinary functions
(setf object-literal-end): Public ordinary functions
(setf object-literal-label): Public ordinary functions
(setf object-literal-properties): Public ordinary functions
(setf object-literal-start): Public ordinary functions
(setf parser-action): Private ordinary functions
(setf parser-goto): Private ordinary functions
(setf parser-states): Private ordinary functions
(setf production-action): Private ordinary functions
(setf production-action-form): Private ordinary functions
(setf production-derives): Private ordinary functions
(setf production-id): Private ordinary functions
(setf production-symbol): Private ordinary functions
(setf property-access-end): Public ordinary functions
(setf property-access-field): Public ordinary functions
(setf property-access-label): Public ordinary functions
(setf property-access-start): Public ordinary functions
(setf property-access-target): Public ordinary functions
(setf re-literal-end): Public ordinary functions
(setf re-literal-label): Public ordinary functions
(setf re-literal-options): Public ordinary functions
(setf re-literal-pattern): Public ordinary functions
(setf re-literal-start): Public ordinary functions
(setf reduce-action-action): Private ordinary functions
(setf reduce-action-action-form): Private ordinary functions
(setf reduce-action-length): Private ordinary functions
(setf reduce-action-symbol): Private ordinary functions
(setf remove-handler-end): Private ordinary functions
(setf remove-handler-handler): Private ordinary functions
(setf remove-handler-label): Private ordinary functions
(setf remove-handler-start): Private ordinary functions
(setf remove-handler-thunk-body): Private ordinary functions
(setf resume-statement-arg): Private ordinary functions
(setf resume-statement-end): Private ordinary functions
(setf resume-statement-label): Private ordinary functions
(setf resume-statement-start): Private ordinary functions
(setf resume-statement-target): Private ordinary functions
(setf return-statement-arg): Public ordinary functions
(setf return-statement-end): Public ordinary functions
(setf return-statement-label): Public ordinary functions
(setf return-statement-start): Public ordinary functions
(setf shift-action-state): Private ordinary functions
(setf source-element-end): Public ordinary functions
(setf source-element-label): Public ordinary functions
(setf source-element-start): Public ordinary functions
(setf special-value-end): Public ordinary functions
(setf special-value-label): Public ordinary functions
(setf special-value-start): Public ordinary functions
(setf special-value-symbol): Public ordinary functions
(setf statement-block-end): Public ordinary functions
(setf statement-block-label): Public ordinary functions
(setf statement-block-start): Public ordinary functions
(setf statement-block-statements): Public ordinary functions
(setf string-literal-end): Public ordinary functions
(setf string-literal-label): Public ordinary functions
(setf string-literal-start): Public ordinary functions
(setf string-literal-value): Public ordinary functions
(setf suspend-statement-end): Private ordinary functions
(setf suspend-statement-label): Private ordinary functions
(setf suspend-statement-start): Private ordinary functions
(setf switch-clauses): Public ordinary functions
(setf switch-end): Public ordinary functions
(setf switch-label): Public ordinary functions
(setf switch-start): Public ordinary functions
(setf switch-value): Public ordinary functions
(setf throw-statement-end): Public ordinary functions
(setf throw-statement-label): Public ordinary functions
(setf throw-statement-start): Public ordinary functions
(setf throw-statement-target): Public ordinary functions
(setf throw-statement-value): Public ordinary functions
(setf thunk-function-body): Private ordinary functions
(setf thunk-function-end): Private ordinary functions
(setf thunk-function-label): Private ordinary functions
(setf thunk-function-name): Private ordinary functions
(setf thunk-function-parameters): Private ordinary functions
(setf thunk-function-start): Private ordinary functions
(setf token-end): Private ordinary functions
(setf token-start): Private ordinary functions
(setf token-terminal): Private ordinary functions
(setf token-value): Private ordinary functions
(setf try-body): Public ordinary functions
(setf try-catch-clause): Public ordinary functions
(setf try-end): Public ordinary functions
(setf try-finally-clause): Public ordinary functions
(setf try-label): Public ordinary functions
(setf try-start): Public ordinary functions
(setf unary-operator-arg): Public ordinary functions
(setf unary-operator-end): Public ordinary functions
(setf unary-operator-label): Public ordinary functions
(setf unary-operator-op-symbol): Public ordinary functions
(setf unary-operator-start): Public ordinary functions
(setf unget-stack): Private generic functions
(setf unget-stack): Private generic functions
(setf var-decl-end): Public ordinary functions
(setf var-decl-initializer): Public ordinary functions
(setf var-decl-label): Public ordinary functions
(setf var-decl-name): Public ordinary functions
(setf var-decl-start): Public ordinary functions
(setf var-decl-statement-end): Public ordinary functions
(setf var-decl-statement-label): Public ordinary functions
(setf var-decl-statement-start): Public ordinary functions
(setf var-decl-statement-var-decls): Public ordinary functions
(setf while-body): Public ordinary functions
(setf while-condition): Public ordinary functions
(setf while-end): Public ordinary functions
(setf while-label): Public ordinary functions
(setf while-start): Public ordinary functions
(setf with-body): Public ordinary functions
(setf with-end): Public ordinary functions
(setf with-label): Private ordinary functions
(setf with-scope-object): Public ordinary functions
(setf with-start): Public ordinary functions

A
accept-action-p: Private ordinary functions
action-equal-p: Private ordinary functions
action-p: Private ordinary functions
add-handler-end: Private ordinary functions
add-handler-handler: Private ordinary functions
add-handler-label: Private ordinary functions
add-handler-p: Private ordinary functions
add-handler-start: Private ordinary functions
add-handler-thunk-body: Private ordinary functions
aif: Private macros
array-literal-elements: Public ordinary functions
array-literal-end: Public ordinary functions
array-literal-label: Public ordinary functions
array-literal-p: Public ordinary functions
array-literal-start: Public ordinary functions
awhen: Private macros

B
backchannel-signal: Private ordinary functions
binary-operator-end: Public ordinary functions
binary-operator-label: Public ordinary functions
binary-operator-left-arg: Public ordinary functions
binary-operator-op-symbol: Public ordinary functions
binary-operator-p: Public ordinary functions
binary-operator-right-arg: Public ordinary functions
binary-operator-start: Public ordinary functions
bind-with-backchannels: Private macros
break-statement-end: Public ordinary functions
break-statement-label: Public ordinary functions
break-statement-p: Public ordinary functions
break-statement-start: Public ordinary functions
break-statement-target-label: Public ordinary functions

C
call-expression-p: Private ordinary functions
case-clause-body: Public ordinary functions
case-clause-end: Public ordinary functions
case-clause-label: Public ordinary functions
case-clause-p: Public ordinary functions
case-clause-start: Public ordinary functions
case-clause-value: Public ordinary functions
catch-clause-binding: Public ordinary functions
catch-clause-body: Public ordinary functions
catch-clause-end: Public ordinary functions
catch-clause-label: Public ordinary functions
catch-clause-p: Public ordinary functions
catch-clause-start: Public ordinary functions
channel-name: Private generic functions
channel-name: Private generic functions
clear-lr1-collection: Private ordinary functions
coerce-token: Private ordinary functions
collect-in-scope: Private generic functions
collect-in-scope: Private generic functions
collect-in-scope: Private generic functions
collect-in-scope: Private generic functions
collect-in-scope: Private generic functions
collect-in-scope: Private generic functions
collect-in-scope: Private generic functions