The fucc Reference Manual

Table of Contents

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

The fucc Reference Manual

This is the fucc Reference Manual, version 0.1.1, generated automatically by Declt version 2.3 "Robert April" on Wed Mar 14 03:55:05 2018 GMT+0.


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

1 Introduction

-*- mode: outline; -*-
* What's FUCC

FUCC is FU Compiler Compiler.  FUCC converts LALR(1) or LR(1)
context-free grammar into Common Lisp program that parses input with
actions.

FUCC consists of two parts: generator and parser.  Generator is used
for generating parsing tables.  Parser uses the tables for parsing an
input.  If your grammar is fixed, you need generator for compilation only
and don't need to distribute it.

See files in doc directory, especially doc/FUCC-FAQ.


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

2 Systems

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


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

2.1 fucc-generator

Author

Ivan Boldyrev

Version

0.1.1

Dependency

fucc-parser (system)

Source

fucc-generator.asd (file)

Component

generator (module)


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

2.2 fucc-parser

Author

Ivan Boldyrev

Version

0.2.1

Source

fucc-parser.asd (file)

Component

parser (module)


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

3 Modules

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


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

3.1 fucc-generator/generator

Parent

fucc-generator (system)

Location

generator/

Components

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

3.2 fucc-parser/parser

Parent

fucc-parser (system)

Location

parser/

Components

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

4 Files

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


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

4.1 Lisp


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

4.1.1 fucc-generator.asd

Location

fucc-generator.asd

Systems

fucc-generator (system)


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

4.1.2 fucc-parser.asd

Location

fucc-parser.asd

Systems

fucc-parser (system)


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

4.1.3 fucc-generator/generator/fg-package.lisp

Parent

generator (module)

Location

generator/fg-package.lisp

Packages

fucc-generator


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

4.1.4 fucc-generator/generator/fg-util.lisp

Dependency

fg-package.lisp (file)

Parent

generator (module)

Location

generator/fg-util.lisp

Internal Definitions

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

4.1.5 fucc-generator/generator/fg-decl.lisp

Dependencies
Parent

generator (module)

Location

generator/fg-decl.lisp

Internal Definitions

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

4.1.6 fucc-generator/generator/fg-grammar-lr.lisp

Dependencies
Parent

generator (module)

Location

generator/fg-grammar-lr.lisp

Internal Definitions

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

4.1.7 fucc-generator/generator/fg-grammar-ll.lisp

Dependencies
Parent

generator (module)

Location

generator/fg-grammar-ll.lisp

Internal Definitions

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

4.1.8 fucc-generator/generator/fg-grammar.lisp

Dependencies
Parent

generator (module)

Location

generator/fg-grammar.lisp

Internal Definitions

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

4.1.9 fucc-generator/generator/fg-transform.lisp

Dependencies
Parent

generator (module)

Location

generator/fg-transform.lisp

Internal Definitions

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

4.1.10 fucc-generator/generator/fg-common.lisp

Dependencies
Parent

generator (module)

Location

generator/fg-common.lisp

Internal Definitions

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

4.1.11 fucc-generator/generator/fg-lr0.lisp

Dependencies
Parent

generator (module)

Location

generator/fg-lr0.lisp

Internal Definitions

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

4.1.12 fucc-generator/generator/fg-lr.lisp

Dependencies
Parent

generator (module)

Location

generator/fg-lr.lisp

Internal Definitions

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

4.1.13 fucc-generator/generator/fg-lalr.lisp

Dependencies
Parent

generator (module)

Location

generator/fg-lalr.lisp

Internal Definitions

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

4.1.14 fucc-generator/generator/fg-ll.lisp

Dependencies
Parent

generator (module)

Location

generator/fg-ll.lisp

Internal Definitions

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

4.1.15 fucc-generator/generator/fg-dump.lisp

Dependencies
Parent

generator (module)

Location

generator/fg-dump.lisp

Internal Definitions

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

4.1.16 fucc-generator/generator/fg-macro.lisp

Dependencies
Parent

generator (module)

Location

generator/fg-macro.lisp

Exported Definitions

defparser (macro)


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

4.1.17 fucc-parser/parser/fucc-package.lisp

Parent

parser (module)

Location

parser/fucc-package.lisp

Packages

fucc


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

4.1.18 fucc-parser/parser/fucc-decl.lisp

Dependency

fucc-package.lisp (file)

Parent

parser (module)

Location

parser/fucc-decl.lisp

Exported Definitions
Internal Definitions

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

4.1.19 fucc-parser/parser/fucc-util.lisp

Dependencies
Parent

parser (module)

Location

parser/fucc-util.lisp

Internal Definitions

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

4.1.20 fucc-parser/parser/fucc-parser.lisp

Dependencies
Parent

parser (module)

Location

parser/fucc-parser.lisp

Exported Definitions

parser-lr (function)

Internal Definitions

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

4.1.21 fucc-parser/parser/fucc-ll.lisp

Dependency

fucc-package.lisp (file)

Parent

parser (module)

Location

parser/fucc-ll.lisp

Exported Definitions

parser-ll (function)

Internal Definitions

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

5 Packages

Packages are listed by definition order.


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

5.1 fucc-generator

Source

fg-package.lisp (file)

Use List

common-lisp

Internal Definitions

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

5.2 fucc

Source

fucc-package.lisp (file)

Use List

common-lisp

Exported Definitions
Internal Definitions

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

6 Definitions

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


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

6.1 Exported definitions


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.1 Special variables

Special Variable: *next-data*
Package

fucc

Source

fucc-decl.lisp (file)

Special Variable: *next-token*

Data associated with next token returned by lexer; accessible in reduction actions.

Package

fucc

Source

fucc-decl.lisp (file)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.2 Macros

Macro: defparser VARIABLE INITIAL (&rest TERMINALS) (&rest RULES) &key RESERVED-TERMINALS PREC-INFO TYPE LEXER-OPTIONS
Package

fucc

Source

fg-macro.lisp (file)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.3 Functions

Function: parser-ll LEXER LL-DATA
Package

fucc

Source

fucc-ll.lisp (file)

Function: parser-lr LEXER PARSER
Package

fucc

Source

fucc-parser.lisp (file)


Previous: , Up: Exported definitions   [Contents][Index]

6.1.4 Conditions

Condition: lr-parse-error-condition ()

LR-specific parser error

Package

fucc

Source

fucc-decl.lisp (file)

Direct superclasses

parse-error-condition (condition)

Direct methods

error-config (method)

Direct slots
Slot: config

Runtime configuration of parser

Initargs

:config

Readers

error-config (generic function)

Condition: parse-error-condition ()

General parsing error

Package

fucc

Source

fucc-decl.lisp (file)

Direct superclasses

condition (condition)

Direct subclasses
Direct methods
Direct slots
Slot: token-id

ID of token that caused the error

Initargs

:token-id

Readers

error-token-id (generic function)

Slot: data

Semantic data associated with token

Initargs

:data

Readers

error-data (generic function)


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

6.2 Internal definitions


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.1 Constants

Constant: +eof+

Symbol used as end-of-file terminal.

Package

fucc-generator

Source

fg-decl.lisp (file)

Constant: +start+

Symbol used as initial nonterminal.

Package

fucc-generator

Source

fg-decl.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.2 Special variables

Special Variable: *action-forms*
Package

fucc-generator

Source

fg-dump.lisp (file)

Special Variable: *counter*
Package

fucc-generator

Source

fg-dump.lisp (file)

Special Variable: *grammar-environment*
Package

fucc-generator

Source

fg-decl.lisp (file)

Special Variable: *grammar-next-id*
Package

fucc-generator

Source

fg-decl.lisp (file)

Special Variable: +attribute-form+
Package

fucc-generator

Source

fg-grammar.lisp (file)

Special Variable: +complex-attribute-form+
Package

fucc-generator

Source

fg-grammar.lisp (file)

Special Variable: +complex-forms-ll+
Package

fucc-generator

Source

fg-grammar-ll.lisp (file)

Special Variable: +complex-forms-lr+
Package

fucc-generator

Source

fg-grammar-lr.lisp (file)

Special Variable: +inlineable-forms-lr+
Package

fucc-generator

Source

fg-grammar-lr.lisp (file)

Special Variable: +wildcard+

Special wildcard terminal for lookahead tracing.

Package

fucc-generator

Source

fg-lalr.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.3 Macros

Macro: combine-first-sets SET &rest OTHER-SETS

This macro is similair to COMBINE-FIRST, but it accepts variable number of argument and doesn’t evaluate unused expressions

Package

fucc-generator

Source

fg-grammar.lisp (file)

Macro: define-property NAME
Package

fucc-generator

Source

fg-decl.lisp (file)

Macro: ll-final-action LEN ACTION

Final ACTION (form that returns function) where rule length is LEN (unsigned byte)

Package

fucc

Source

fucc-ll.lisp (file)

Macro: ll-middle-action LEN ACTION

Non-final ACTION (form that return function). LEN is unsigned byte that defines number of preceeding tokens.

Package

fucc

Source

fucc-ll.lisp (file)

Macro: opush PLACE ELT &optional ORDERING

Insert new element into ordered set. Note that argument order is different from PUSH.

Package

fucc-generator

Source

fg-util.lisp (file)

Macro: rev-apply N FUNC LIST-EXP
Package

fucc

Source

fucc-ll.lisp (file)

Macro: stack-popper N
Package

fucc

Source

fucc-ll.lisp (file)

Macro: with-lr-config (STATE-STACK-VAR TERM-STACK-VAR DATA-STACK-VAR) STACK &body BODY

Components of stack returned by STACK expressions are bound to variables named by symbols in STATE-STACK-VAR, TERM-STACK-VAR and DATA-STACK-VAR. These variables can be used in the BODY.

Package

fucc

Source

fucc-decl.lisp (file)

Macro: with-new-grammar-environment &body BODY
Package

fucc-generator

Source

fg-grammar.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.4 Functions

Function: accept-action-p OBJECT
Package

fucc

Source

fucc-decl.lisp (file)

Function: accept-set-slr-helper LRPOINT ITEM GRAMMAR
Package

fucc-generator

Source

fg-lr0.lisp (file)

Function: action-type ACTION

Action designator (implementation-dependent)

Package

fucc

Source

fucc-decl.lisp (file)

Function: add-epsilon ACTIONS &optional VALUE-FORM
Package

fucc-generator

Source

fg-transform.lisp (file)

Function: add-nterm ACTIONS
Package

fucc-generator

Source

fg-transform.lisp (file)

Function: add-to-maximal-actions MAX-ACTIONS ACTION
Package

fucc-generator

Source

fg-common.lisp (file)

Function: advance-lrpoint LRPOINT
Package

fucc-generator

Source

fg-decl.lisp (file)

Function: alist-to-hash-table LIST
Package

fucc

Source

fucc-util.lisp (file)

Function: apply-argument-transforms-to-action TRANSFORMS ACTION

Apply TRANSFORMS to ACTION

Package

fucc-generator

Source

fg-grammar-lr.lisp (file)

Function: attribute-form-p FORM

True if form is any attribute form.

Package

fucc-generator

Source

fg-grammar.lisp (file)

Function: bin-search-goto-table TABLE KEY

Binary search in array of cons pairs: (key . value).
Because of nature of goto-table search is always successfull, so error check are not performed.
Returns value associated with the KEY.

Package

fucc

Source

fucc-util.lisp (file)

Function: calculate-epsilon-actions GRAMMAR
Package

fucc-generator

Source

fg-transform.lisp (file)

Function: calculate-first GRAMMAR

Calculate FIRST for every nterm of grammar.

Package

fucc-generator

Source

fg-grammar.lisp (file)

Function: calculate-follow GRAMMAR
Package

fucc-generator

Source

fg-grammar.lisp (file)

Function: calculate-rm-info GRAMMAR

Info about rightmost derivations

Package

fucc-generator

Source

fg-lalr.lisp (file)

Function: chain-rule-p RULE
Package

fucc-generator

Source

fg-common.lisp (file)

Function: channels OBJ
Package

fucc-generator

Source

fg-lalr.lisp (file)

Setf Expander

(setf channels) (setf expander)

Setf Expander: (setf channels) OBJ
Package

fucc-generator

Source

fg-lalr.lisp (file)

Reader

channels (function)

Function: closure SET PROCEED EXPAND ORDERING
Package

fucc-generator

Source

fg-common.lisp (file)

Function: closure-lr0 SET
Package

fucc-generator

Source

fg-lr0.lisp (file)

Function: closure-lr1 SET
Package

fucc-generator

Source

fg-lr.lisp (file)

Function: combine-first SET1 SET2

If (FIRST-SEQ A) is SET1, (FIRST-SEQ B) is SET2, this function returns (FIRST-SEQ (APPEND A B))

Package

fucc-generator

Source

fg-grammar.lisp (file)

Function: compare-actions ACTION1 ACTION2
Package

fucc-generator

Source

fg-common.lisp (file)

Function: complex-attribute-form-p FORM

True if form is non-primitive attribute form.

Package

fucc-generator

Source

fg-grammar.lisp (file)

Function: convert-to-deterministic-ll-table TABLE GRAMMAR
Package

fucc-generator

Source

fg-ll.lisp (file)

Function: copy-accept-action INSTANCE
Package

fucc

Source

fucc-decl.lisp (file)

Function: copy-error-action INSTANCE
Package

fucc

Source

fucc-decl.lisp (file)

Function: copy-lr-config INSTANCE
Package

fucc

Source

fucc-decl.lisp (file)

Function: copy-lrpoint INSTANCE
Package

fucc-generator

Source

fg-decl.lisp (file)

Function: copy-reduce-action INSTANCE
Package

fucc

Source

fucc-decl.lisp (file)

Function: copy-shift-action INSTANCE
Package

fucc

Source

fucc-decl.lisp (file)

Function: copy-state INSTANCE
Package

fucc

Source

fucc-decl.lisp (file)

Function: delete-unproductive-nterm-rules GRAMMAR

Remove rules with unprductive nterms and nterms themself. Return list of unprductive nterms.

Package

fucc-generator

Source

fg-transform.lisp (file)

Function: delete-unused-term-rules GRAMMAR

Delete unused terminals and nterminals (i.e. they have no path from initial terminal). Return list of unused terminals/nterminals.

Package

fucc-generator

Source

fg-transform.lisp (file)

Function: det-ll-table->list-ll-parser-data TABLE
Package

fucc-generator

Source

fg-ll.lisp (file)

Function: dump-action-to-2d ACTION-TABLE
Package

fucc-generator

Source

fg-dump.lisp (file)

Function: dump-goto-to-2d GOTO-TABLE
Package

fucc-generator

Source

fg-dump.lisp (file)

Function: dump-to-2d-and-1d ACTION-TABLE GOTO-TABLE
Package

fucc-generator

Source

fg-dump.lisp (file)

Function: dump-to-2d-tables ACTION-TABLE GOTO-TABLE
Package

fucc-generator

Source

fg-dump.lisp (file)

Function: dump-valid-terminals ACTION-TABLE GRAMMAR
Package

fucc-generator

Source

fg-dump.lisp (file)

Function: epsilon-action OBJ
Package

fucc-generator

Source

fg-transform.lisp (file)

Setf Expander

(setf epsilon-action) (setf expander)

Setf Expander: (setf epsilon-action) OBJ
Package

fucc-generator

Source

fg-transform.lisp (file)

Reader

epsilon-action (function)

Function: epsilon-rule-p RULE

Check epsilon-rule.

Package

fucc-generator

Source

fg-decl.lisp (file)

Function: error-action-p OBJECT
Package

fucc

Source

fucc-decl.lisp (file)

Function: expand-action RULE
Package

fucc-generator

Source

fg-grammar.lisp (file)

Function: expand-action--class FORM RHS REST REV-VAR-LIST REV-INITARG-LIST
Package

fucc-generator

Source

fg-grammar.lisp (file)

Function: expand-action--do FORM REV-VAR-LIST REST
Package

fucc-generator

Source

fg-grammar.lisp (file)

Function: expand-complex-form-lr FORM RULE POS
Package

fucc-generator

Source

fg-grammar-lr.lisp (file)

Function: expand-form-ll FORM RULE POS
Package

fucc-generator

Source

fg-grammar-ll.lisp (file)

Function: expand-inlinable-form-lr FORM RULE POS
Package

fucc-generator

Source

fg-grammar-lr.lisp (file)

Function: expand-middle-actions-in-rule-lr RULE

Expand middle actions for LR. Values of middle actions are ignored.

Package

fucc-generator

Source

fg-grammar-lr.lisp (file)

Function: expand-middle-actions-lr RULES

Expand middle actions for LR in rules.

Package

fucc-generator

Source

fg-grammar-lr.lisp (file)

Function: expand-rhs RHS
Package

fucc-generator

Source

fg-grammar.lisp (file)

Function: expand-rules* EXPANDER RECURSIVE PREFIX-SET RULES

Apply EXPANDER to forms starting with atoms in PREFIX-SET to all RULES.

Package

fucc-generator

Source

fg-grammar-lr.lisp (file)

Function: expand-rules-ll RULES
Package

fucc-generator

Source

fg-grammar-ll.lisp (file)

Function: expand-rules-lr RULES
Package

fucc-generator

Source

fg-grammar-lr.lisp (file)

Function: filter-rule RULE-RIGHT GRAMMAR

Transform nterm objects into their codes (negative for non-terminals).

Package

fucc-generator

Source

fg-ll.lisp (file)

Function: generate-laheads ITEMS EOF
Package

fucc-generator

Source

fg-lalr.lisp (file)

Function: generate-tables GRAMMAR ITEMS REDUCE-SET-FUN

Return two values: action table and goto table.

Package

fucc-generator

Source

fg-common.lisp (file)

Function: get-epsilon-reductions LRPOINT LAHEAD GRAMMAR

Epsilon reductions that can happen for the LRPOINT and LAHEAD

Package

fucc-generator

Source

fg-lalr.lisp (file)

Function: get-nterm NAME &key IS-TERMINAL

If NAME is NIL, return NIL. Otherwise look for NAME in environment. If found, return it; otherwise create new object.

Package

fucc-generator

Source

fg-grammar.lisp (file)

Function: get-uniq-id FORM
Package

fucc-generator

Source

fg-dump.lisp (file)

Function: goto-lr0 SET NTERMINAL
Package

fucc-generator

Source

fg-lr0.lisp (file)

Function: goto-lr1 SET NTERM
Package

fucc-generator

Source

fg-lr.lisp (file)

Function: goto-nc SET NTERMINAL PRED
Package

fucc-generator

Source

fg-common.lisp (file)

Function: iget ELEMENT HASHTABLE HASHFUN TEST
Package

fucc-generator

Source

fg-util.lisp (file)

Function: init-env TERMINALS

Populate table with TERMINALS. Returns list of term objects and first ID of non-terminals.

Package

fucc-generator

Source

fg-grammar.lisp (file)

Function: itable-to-list HT
Package

fucc-generator

Source

fg-util.lisp (file)

Function: item-first SOMETHING
Package

fucc-generator

Source

fg-grammar.lisp (file)

Function: item-hash ITEM
Package

fucc-generator

Source

fg-decl.lisp (file)

Function: item-kernel OBJ
Package

fucc-generator

Source

fg-lalr.lisp (file)

Setf Expander

(setf item-kernel) (setf expander)

Setf Expander: (setf item-kernel) OBJ
Package

fucc-generator

Source

fg-lalr.lisp (file)

Reader

item-kernel (function)

Function: item= A B
Package

fucc-generator

Source

fg-decl.lisp (file)

Function: items GRAMMAR CLOSURE-FUN GOTO-FUN INITIAL-LRPOINT

Calculate kernel items. Returns list of items.

Package

fucc-generator

Source

fg-common.lisp (file)

Function: items-lalr GRAMMAR
Package

fucc-generator

Source

fg-lalr.lisp (file)

Function: items-lr0 GRAMMAR

Calculate LR(0) items for the GRAMMAR.

Package

fucc-generator

Source

fg-lr0.lisp (file)

Function: items-lr1 GRAMMAR

Calculate LR(1) items for GRAMMAR.

Package

fucc-generator

Source

fg-lr.lisp (file)

Function: kernel ITEM
Package

fucc-generator

Source

fg-lalr.lisp (file)

Function: kernel-lrpoint-p LRPOINT
Package

fucc-generator

Source

fg-lalr.lisp (file)

Function: linearize-conflicts ACTIONS
Package

fucc-generator

Source

fg-common.lisp (file)

Function: list-cmp PREDICATE

Return function that returns true if two lists are equal element by element with PREDICATE.

Package

fucc-generator

Source

fg-util.lisp (file)

Function: ll-rule-actions LL-RULE
Package

fucc

Source

fucc-ll.lisp (file)

Function: ll-rule-nterms LL-RULE
Package

fucc

Source

fucc-ll.lisp (file)

Function: ll-terminal-p ID
Package

fucc

Source

fucc-ll.lisp (file)

Function: longer-p LIST LEN

True, iff LIST is longher than LEN.

Package

fucc

Source

fucc-parser.lisp (file)

Function: lr-config-data-stack INSTANCE
Function: (setf lr-config-data-stack) VALUE INSTANCE
Package

fucc

Source

fucc-decl.lisp (file)

Function: lr-config-p OBJECT
Package

fucc

Source

fucc-decl.lisp (file)

Function: lr-config-state-stack INSTANCE
Function: (setf lr-config-state-stack) VALUE INSTANCE
Package

fucc

Source

fucc-decl.lisp (file)

Function: lr-config-term-stack INSTANCE
Function: (setf lr-config-term-stack) VALUE INSTANCE
Package

fucc

Source

fucc-decl.lisp (file)

Function: lrpoint-hash LRP
Package

fucc-generator

Source

fg-decl.lisp (file)

Function: lrpoint-lahead INSTANCE
Function: (setf lrpoint-lahead) VALUE INSTANCE
Package

fucc-generator

Source

fg-decl.lisp (file)

Function: lrpoint-p OBJECT
Package

fucc-generator

Source

fg-decl.lisp (file)

Function: lrpoint-pos INSTANCE
Function: (setf lrpoint-pos) VALUE INSTANCE
Package

fucc-generator

Source

fg-decl.lisp (file)

Function: lrpoint-rule INSTANCE
Function: (setf lrpoint-rule) VALUE INSTANCE
Package

fucc-generator

Source

fg-decl.lisp (file)

Function: lrpoint<= A B
Package

fucc-generator

Source

fg-decl.lisp (file)

Function: lrpoint= A B
Package

fucc-generator

Source

fg-decl.lisp (file)

Function: make-accept-action &key
Package

fucc

Source

fucc-decl.lisp (file)

Function: make-deterministic-ll-parser-data TABLE GRAMMAR
Package

fucc-generator

Source

fg-ll.lisp (file)

Function: make-error-action &key
Package

fucc

Source

fucc-decl.lisp (file)

Function: make-grammar &rest ARGS
Package

fucc-generator

Source

fg-decl.lisp (file)

Function: make-item &rest ARGS
Package

fucc-generator

Source

fg-decl.lisp (file)

Function: make-ll-table GRAMMAR

Generate LL table where each cell may contain list of possible non-terminals. You can later convert nondeterministic tables (where some cell has more than one nonterminal) into deterministic with some precedence rules or just reject such tables.

Package

fucc-generator

Source

fg-ll.lisp (file)

Function: make-lr-config &key (STATE-STACK STATE-STACK) (TERM-STACK TERM-STACK) (DATA-STACK DATA-STACK)
Package

fucc

Source

fucc-decl.lisp (file)

Function: make-lrpoint &key (RULE RULE) (POS POS) (LAHEAD LAHEAD)
Package

fucc-generator

Source

fg-decl.lisp (file)

Function: make-nterm &rest ARGS
Package

fucc-generator

Source

fg-decl.lisp (file)

Function: make-reduce-action &key (TERM TERM) (LEN LEN) (FUNCTION FUNCTION)
Package

fucc

Source

fucc-decl.lisp (file)

Function: make-rule &rest ARGS
Package

fucc-generator

Source

fg-decl.lisp (file)

Function: make-shift-action &key (NEW-STATE NEW-STATE)
Package

fucc

Source

fucc-decl.lisp (file)

Function: make-state &key (ID ID) (TABLE TABLE)
Package

fucc

Source

fucc-decl.lisp (file)

Function: negative->nt NG
Package

fucc

Source

fucc-ll.lisp (file)

Function: nsplit-list LIST N

Return two values: NREVERSEd prefix of LIST of length N and suffix. LIST is destructively modified.

Package

fucc

Source

fucc-parser.lisp (file)

Function: nt->negative ID
Package

fucc

Source

fucc-ll.lisp (file)

Function: nterm-at-pos LRPOINT

Return nterm at position or NIL.

Package

fucc-generator

Source

fg-decl.lisp (file)

Function: nterm-by-name NAME GRAMMAR

Find NTERM by NAME in given GRAMMAR

Package

fucc-generator

Source

fg-grammar.lisp (file)

Function: nterm-first OBJ
Package

fucc-generator

Source

fg-grammar.lisp (file)

Setf Expander

(setf nterm-first) (setf expander)

Setf Expander: (setf nterm-first) OBJ
Package

fucc-generator

Source

fg-grammar.lisp (file)

Reader

nterm-first (function)

Function: nterm-follow OBJ
Package

fucc-generator

Source

fg-grammar.lisp (file)

Setf Expander

(setf nterm-follow) (setf expander)

Setf Expander: (setf nterm-follow) OBJ
Package

fucc-generator

Source

fg-grammar.lisp (file)

Reader

nterm-follow (function)

Function: nterm-used OBJ
Package

fucc-generator

Source

fg-transform.lisp (file)

Setf Expander

(setf nterm-used) (setf expander)

Setf Expander: (setf nterm-used) OBJ
Package

fucc-generator

Source

fg-transform.lisp (file)

Reader

nterm-used (function)

Function: nterm<= A B
Package

fucc-generator

Source

fg-grammar.lisp (file)

Function: nterminal-epsilon-rules NTERMINAL

List of epsilon rules of the nterminal

Package

fucc-generator

Source

fg-lalr.lisp (file)

Function: nterminal-id TERMINAL GRAMMAR
Package

fucc-generator

Source

fg-decl.lisp (file)

Function: ocons ELT SET &key ORDERING

Insert element into ordered set.

Package

fucc-generator

Source

fg-util.lisp (file)

Function: ointersection SET1 SET2 &key ORDERING

Intersection of two ordered sets: SET1 and SET2. ORDERING is a reflexive ordering.

Package

fucc-generator

Source

fg-util.lisp (file)

Function: one-step-chain-rule-p RULE STATE TERMINAL-ID ACTION-TABLE GOTO-TABLE
Package

fucc-generator

Source

fg-common.lisp (file)

Function: oset-ordering ORDERING

Return function that defines inducted ordering of ordered sets.

Package

fucc-generator

Source

fg-util.lisp (file)

Function: ounion SET1 SET2 &key ORDERING

Union of two ordered sets: SET1 and SET2. ORDERING is a reflexive ordering.

Package

fucc-generator

Source

fg-util.lisp (file)

Function: parse-complex-form-lr FORM RULE POS
Package

fucc-generator

Source

fg-grammar-lr.lisp (file)

Function: parse-grammar INITIAL TERMINALS RULES &key PREC-INFO TYPE
Package

fucc-generator

Source

fg-grammar.lisp (file)

Function: parser-lr--reduce! CONFIG ACTION PARSER *NEXT-TOKEN* *NEXT-DATA*
Package

fucc

Source

fucc-parser.lisp (file)

Function: parser-lr--shift! CONFIG ATOM-ID DATA STATE
Package

fucc

Source

fucc-parser.lisp (file)

Function: pop-n-stack DATA-STACK ACTION-STACK N
Package

fucc

Source

fucc-ll.lisp (file)

Function: process-rule S-RULE

Process given rule and return RULE object.

Package

fucc-generator

Source

fg-grammar.lisp (file)

Function: productive OBJ
Package

fucc-generator

Source

fg-transform.lisp (file)

Setf Expander

(setf productive) (setf expander)

Setf Expander: (setf productive) OBJ
Package

fucc-generator

Source

fg-transform.lisp (file)

Reader

productive (function)

Function: prop-bound-p OBJ NAME
Package

fucc-generator

Source

fg-decl.lisp (file)

Function: reduce-action ACTION STATE TERMINAL ACTION-TABLE GOTO-TABLE
Package

fucc-generator

Source

fg-common.lisp (file)

Function: reduce-action-function INSTANCE
Function: (setf reduce-action-function) VALUE INSTANCE
Package

fucc

Source

fucc-decl.lisp (file)

Function: reduce-action-len INSTANCE
Function: (setf reduce-action-len) VALUE INSTANCE
Package

fucc

Source

fucc-decl.lisp (file)

Function: reduce-action-p OBJECT
Package

fucc

Source

fucc-decl.lisp (file)

Function: reduce-action-term INSTANCE
Function: (setf reduce-action-term) VALUE INSTANCE
Package

fucc

Source

fucc-decl.lisp (file)

Function: reduce-set-lalr ITEM GRAMMAR
Package

fucc-generator

Source

fg-lalr.lisp (file)

Function: reduce-set-lr0 ITEM GRAMMAR

Set rules that can be reduced in given item with LR0 aglorithm.

Package

fucc-generator

Source

fg-lr0.lisp (file)

Function: reduce-set-lr1 ITEM GRAMMAR
Package

fucc-generator

Source

fg-lr.lisp (file)

Function: reduce-set-slr ITEM GRAMMAR

Set rules that can be reduced in given item with LR0 aglorithm.

Package

fucc-generator

Source

fg-lr0.lisp (file)

Function: reduction-lrpoint-p LRP

Check if lrpoint is reduction lrpoint (i.e. point is at right side)

Package

fucc-generator

Source

fg-common.lisp (file)

Function: remove-chain-rules ACTION-TABLE GOTO-TABLE
Package

fucc-generator

Source

fg-common.lisp (file)

Function: remove-epsilon RULE EPSILON-TERMS
Package

fucc-generator

Source

fg-transform.lisp (file)

Function: remove-epsilon-rules GRAMMAR

Remove epsilon rules. Actions are converted appropriately.
Return alist NTERMINAL -> EPSILON-ONLY-P where EPSILON-ONLY-P is true iff NTERMINAL expands only to EPSILON or nothing.

This function may leave unused nterminals. Use DELETE-UNUSED-NTERM-RULES to remove them

Package

fucc-generator

Source

fg-transform.lisp (file)

Function: renumber-rules GRAMMAR
Package

fucc-generator

Source

fg-grammar.lisp (file)

Function: report-conflict-and-ret TYPE USED-ACTION DISCARDED-ACTION
Package

fucc-generator

Source

fg-common.lisp (file)

Function: resolve-simple-conflicts ACTIONS

Return set of actions that no other action supersedes.

Package

fucc-generator

Source

fg-common.lisp (file)

Function: rm-info OBJ
Package

fucc-generator

Source

fg-lalr.lisp (file)

Setf Expander

(setf rm-info) (setf expander)

Setf Expander: (setf rm-info) OBJ
Package

fucc-generator

Source

fg-lalr.lisp (file)

Reader

rm-info (function)

Function: rule->ll-rule RULE GRAMMAR
Package

fucc-generator

Source

fg-ll.lisp (file)

Function: seq-first SEQ

FIRST of list of nterms

Package

fucc-generator

Source

fg-grammar.lisp (file)

Function: set-channel-info FROM-ITEM FROM-LRP TO-ITEM TO-LRP
Package

fucc-generator

Source

fg-lalr.lisp (file)

Function: set-precedence-info GRAMMAR
Package

fucc-generator

Source

fg-grammar.lisp (file)

Function: set-spontaneous-lahead-info LRPOINT ITEM
Package

fucc-generator

Source

fg-lalr.lisp (file)

Function: shift-action-new-state INSTANCE
Function: (setf shift-action-new-state) VALUE INSTANCE
Package

fucc

Source

fucc-decl.lisp (file)

Function: shift-action-p OBJECT
Package

fucc

Source

fucc-decl.lisp (file)

Function: simple-lrpoint LRPOINT ITEM
Package

fucc-generator

Source

fg-lalr.lisp (file)

Function: split-rule-form RULE-FORM

Convert rule form (A -> x -> y) into list ((A x) (A y))

Package

fucc-generator

Source

fg-grammar.lisp (file)

Function: spontaneous-laheads OBJ
Package

fucc-generator

Source

fg-lalr.lisp (file)

Setf Expander

(setf spontaneous-laheads) (setf expander)

Setf Expander: (setf spontaneous-laheads) OBJ
Package

fucc-generator

Source

fg-lalr.lisp (file)

Reader

spontaneous-laheads (function)

Function: spread-laheads ITEMS
Package

fucc-generator

Source

fg-lalr.lisp (file)

Function: state-id INSTANCE
Function: (setf state-id) VALUE INSTANCE
Package

fucc

Source

fucc-decl.lisp (file)

Function: state-p OBJECT
Package

fucc

Source

fucc-decl.lisp (file)

Function: state-table INSTANCE
Function: (setf state-table) VALUE INSTANCE
Package

fucc

Source

fucc-decl.lisp (file)

Function: update-rm-info TARGET-NTERMINAL RULE

Update RM-INFO for TARGET-NTERMINAL with information from RULE.

Package

fucc-generator

Source

fg-lalr.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.5 Generic functions

Generic Function: error-config CONDITION
Package

fucc

Methods
Method: error-config (CONDITION lr-parse-error-condition)
Source

fucc-decl.lisp (file)

Generic Function: error-data CONDITION
Package

fucc

Methods
Method: error-data (CONDITION parse-error-condition)
Source

fucc-decl.lisp (file)

Generic Function: error-token-id CONDITION
Package

fucc

Methods
Method: error-token-id (CONDITION parse-error-condition)
Source

fucc-decl.lisp (file)

Generic Function: first-nterminal-id OBJECT
Generic Function: (setf first-nterminal-id) NEW-VALUE OBJECT
Package

fucc-generator

Methods
Method: first-nterminal-id (GRAMMAR grammar)

automatically generated reader method

Source

fg-decl.lisp (file)

Method: (setf first-nterminal-id) NEW-VALUE (GRAMMAR grammar)

automatically generated writer method

Source

fg-decl.lisp (file)

Generic Function: grammar-environment OBJECT
Generic Function: (setf grammar-environment) NEW-VALUE OBJECT
Package

fucc-generator

Methods
Method: grammar-environment (GRAMMAR grammar)

automatically generated reader method

Source

fg-decl.lisp (file)

Method: (setf grammar-environment) NEW-VALUE (GRAMMAR grammar)

automatically generated writer method

Source

fg-decl.lisp (file)

Generic Function: grammar-nterminals OBJECT
Generic Function: (setf grammar-nterminals) NEW-VALUE OBJECT
Package

fucc-generator

Methods
Method: grammar-nterminals (GRAMMAR grammar)

automatically generated reader method

Source

fg-decl.lisp (file)

Method: (setf grammar-nterminals) NEW-VALUE (GRAMMAR grammar)

automatically generated writer method

Source

fg-decl.lisp (file)

Generic Function: grammar-prec-info OBJECT
Generic Function: (setf grammar-prec-info) NEW-VALUE OBJECT
Package

fucc-generator

Methods
Method: grammar-prec-info (GRAMMAR grammar)

automatically generated reader method

Source

fg-decl.lisp (file)

Method: (setf grammar-prec-info) NEW-VALUE (GRAMMAR grammar)

automatically generated writer method

Source

fg-decl.lisp (file)

Generic Function: grammar-rules OBJECT
Generic Function: (setf grammar-rules) NEW-VALUE OBJECT
Package

fucc-generator

Methods
Method: grammar-rules (GRAMMAR grammar)

automatically generated reader method

Source

fg-decl.lisp (file)

Method: (setf grammar-rules) NEW-VALUE (GRAMMAR grammar)

automatically generated writer method

Source

fg-decl.lisp (file)

Generic Function: grammar-terminals OBJECT
Generic Function: (setf grammar-terminals) NEW-VALUE OBJECT
Package

fucc-generator

Methods
Method: grammar-terminals (GRAMMAR grammar)

automatically generated reader method

Source

fg-decl.lisp (file)

Method: (setf grammar-terminals) NEW-VALUE (GRAMMAR grammar)

automatically generated writer method

Source

fg-decl.lisp (file)

Generic Function: item-index OBJECT
Generic Function: (setf item-index) NEW-VALUE OBJECT
Package

fucc-generator

Methods
Method: item-index (ITEM item)

automatically generated reader method

Source

fg-decl.lisp (file)

Method: (setf item-index) NEW-VALUE (ITEM item)

automatically generated writer method

Source

fg-decl.lisp (file)

Generic Function: item-moves OBJECT
Generic Function: (setf item-moves) NEW-VALUE OBJECT
Package

fucc-generator

Methods
Method: item-moves (ITEM item)

automatically generated reader method

Source

fg-decl.lisp (file)

Method: (setf item-moves) NEW-VALUE (ITEM item)

automatically generated writer method

Source

fg-decl.lisp (file)

Generic Function: item-set OBJECT
Package

fucc-generator

Methods
Method: item-set (ITEM item)

automatically generated reader method

Source

fg-decl.lisp (file)

Generic Function: nterm-id OBJECT
Generic Function: (setf nterm-id) NEW-VALUE OBJECT
Package

fucc-generator

Methods
Method: nterm-id (NTERM nterm)

automatically generated reader method

Source

fg-decl.lisp (file)

Method: (setf nterm-id) NEW-VALUE (NTERM nterm)

automatically generated writer method

Source

fg-decl.lisp (file)

Generic Function: nterm-name OBJECT
Generic Function: (setf nterm-name) NEW-VALUE OBJECT
Package

fucc-generator

Methods
Method: nterm-name (NAME null)
Source

fg-decl.lisp (file)

Method: nterm-name (NTERM nterm)

automatically generated reader method

Source

fg-decl.lisp (file)

Method: (setf nterm-name) NEW-VALUE (NTERM nterm)

automatically generated writer method

Source

fg-decl.lisp (file)

Generic Function: nterm-rules OBJECT
Generic Function: (setf nterm-rules) NEW-VALUE OBJECT
Package

fucc-generator

Methods
Method: nterm-rules (NTERM nterm)

automatically generated reader method

Source

fg-decl.lisp (file)

Method: (setf nterm-rules) NEW-VALUE (NTERM nterm)

automatically generated writer method

Source

fg-decl.lisp (file)

Generic Function: possible-actions CONDITION
Package

fucc

Methods
Method: possible-actions (CONDITION parse-conflict-condition)
Source

fucc-decl.lisp (file)

Generic Function: prec-assoc OBJECT
Generic Function: (setf prec-assoc) NEW-VALUE OBJECT
Package

fucc-generator

Methods
Method: prec-assoc (PREC-MIXIN prec-mixin)

automatically generated reader method

Source

fg-decl.lisp (file)

Method: (setf prec-assoc) NEW-VALUE (PREC-MIXIN prec-mixin)

automatically generated writer method

Source

fg-decl.lisp (file)

Generic Function: prec-priority OBJECT
Generic Function: (setf prec-priority) NEW-VALUE OBJECT
Package

fucc-generator

Methods
Method: prec-priority (NUMBER number)
Source

fg-decl.lisp (file)

Method: prec-priority (PREC-MIXIN prec-mixin)

automatically generated reader method

Source

fg-decl.lisp (file)

Method: (setf prec-priority) NEW-VALUE (PREC-MIXIN prec-mixin)

automatically generated writer method

Source

fg-decl.lisp (file)

Generic Function: rule-action OBJECT
Generic Function: (setf rule-action) NEW-VALUE OBJECT
Package

fucc-generator

Methods
Method: rule-action (RULE rule)
Method: (setf rule-action) NEW-VALUE (RULE rule)

Action of the rule that creates rule’s result

Source

fg-decl.lisp (file)

Generic Function: rule-index OBJECT
Generic Function: (setf rule-index) NEW-VALUE OBJECT
Package

fucc-generator

Methods
Method: rule-index (RULE rule)

automatically generated reader method

Source

fg-decl.lisp (file)

Method: (setf rule-index) NEW-VALUE (RULE rule)

automatically generated writer method

Source

fg-decl.lisp (file)

Generic Function: rule-init-action OBJECT
Generic Function: (setf rule-init-action) NEW-VALUE OBJECT
Package

fucc-generator

Methods
Method: rule-init-action (RULE rule)
Method: (setf rule-init-action) NEW-VALUE (RULE rule)

Action executed when rule is expanded.

Source

fg-decl.lisp (file)

Generic Function: rule-left OBJECT
Generic Function: (setf rule-left) NEW-VALUE OBJECT
Package

fucc-generator

Methods
Method: rule-left (RULE rule)
Method: (setf rule-left) NEW-VALUE (RULE rule)

Left-hand size: non-terminal

Source

fg-decl.lisp (file)

Generic Function: rule-length OBJECT
Package

fucc-generator

Methods
Method: rule-length (RULE rule)

Cached length of right-hand side

Source

fg-decl.lisp (file)

Generic Function: rule-middle-actions OBJECT
Generic Function: (setf rule-middle-actions) NEW-VALUE OBJECT
Package

fucc-generator

Methods
Method: rule-middle-actions (RULE rule)
Method: (setf rule-middle-actions) NEW-VALUE (RULE rule)

List of middle actions

Source

fg-decl.lisp (file)

Generic Function: rule-nterminal OBJECT
Generic Function: (setf rule-nterminal) NEW-VALUE OBJECT
Package

fucc-generator

Methods
Method: rule-nterminal (RULE rule)
Method: (setf rule-nterminal) NEW-VALUE (RULE rule)

Left-hand size: non-terminal

Source

fg-decl.lisp (file)

Generic Function: rule-production OBJECT
Generic Function: (setf rule-production) NEW-VALUE OBJECT
Package

fucc-generator

Methods
Method: rule-production (RULE rule)
Method: (setf rule-production) NEW-VALUE (RULE rule)

Right-hand side: list of terms

Source

fg-decl.lisp (file)

Generic Function: rule-right OBJECT
Generic Function: (setf rule-right) NEW-VALUE OBJECT
Package

fucc-generator

Methods
Method: rule-right (RULE rule)
Method: (setf rule-right) NEW-VALUE (RULE rule)

Right-hand side: list of terms

Source

fg-decl.lisp (file)

Method: (setf rule-right) VALUE (RULE rule) after
Source

fg-decl.lisp (file)

Generic Function: terminal-p OBJECT
Generic Function: (setf terminal-p) NEW-VALUE OBJECT
Package

fucc-generator

Methods
Method: terminal-p (TERM null)
Source

fg-decl.lisp (file)

Method: terminal-p (NTERM nterm)

automatically generated reader method

Source

fg-decl.lisp (file)

Method: (setf terminal-p) NEW-VALUE (NTERM nterm)

automatically generated writer method

Source

fg-decl.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.6 Conditions

Condition: parse-conflict-condition ()

Unresolved conflict in parser

Package

fucc

Source

fucc-decl.lisp (file)

Direct superclasses

parse-error-condition (condition)

Direct methods

possible-actions (method)

Direct slots
Slot: possible-actions

List of conflicting actions

Initargs

:actions

Initform

(quote nil)

Readers

possible-actions (generic function)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.7 Structures

Structure: accept-action ()
Package

fucc

Source

fucc-decl.lisp (file)

Direct superclasses

structure-object (structure)

Structure: error-action ()
Package

fucc

Source

fucc-decl.lisp (file)

Direct superclasses

structure-object (structure)

Structure: lr-config ()
Package

fucc

Source

fucc-decl.lisp (file)

Direct superclasses

structure-object (structure)

Direct slots
Slot: state-stack
Type

list

Initform

(error ")")

Readers

lr-config-state-stack (function)

Writers

(setf lr-config-state-stack) (function)

Slot: term-stack
Type

list

Readers

lr-config-term-stack (function)

Writers

(setf lr-config-term-stack) (function)

Slot: data-stack
Type

list

Readers

lr-config-data-stack (function)

Writers

(setf lr-config-data-stack) (function)

Structure: lrpoint ()
Package

fucc-generator

Source

fg-decl.lisp (file)

Direct superclasses

structure-object (structure)

Direct slots
Slot: rule
Readers

lrpoint-rule (function)

Writers

(setf lrpoint-rule) (function)

Slot: pos
Type

fixnum

Initform

0

Readers

lrpoint-pos (function)

Writers

(setf lrpoint-pos) (function)

Slot: lahead
Readers

lrpoint-lahead (function)

Writers

(setf lrpoint-lahead) (function)

Structure: reduce-action ()
Package

fucc

Source

fucc-decl.lisp (file)

Direct superclasses

structure-object (structure)

Direct slots
Slot: term
Type

fucc::term

Initform

0

Readers

reduce-action-term (function)

Writers

(setf reduce-action-term) (function)

Slot: len
Type

unsigned-byte

Initform

0

Readers

reduce-action-len (function)

Writers

(setf reduce-action-len) (function)

Slot: function
Type

(or fixnum function)

Initform

(function list)

Readers

reduce-action-function (function)

Writers

(setf reduce-action-function) (function)

Structure: shift-action ()
Package

fucc

Source

fucc-decl.lisp (file)

Direct superclasses

structure-object (structure)

Direct slots
Slot: new-state
Initform

(error "")

Readers

shift-action-new-state (function)

Writers

(setf shift-action-new-state) (function)

Structure: state ()
Package

fucc

Source

fucc-decl.lisp (file)

Direct superclasses

structure-object (structure)

Direct methods

print-object (method)

Direct slots
Slot: id
Type

unsigned-byte

Initform

0

Readers

state-id (function)

Writers

(setf state-id) (function)

Slot: table
Type

fucc::state-row

Initform

(error "")

Readers

state-table (function)

Writers

(setf state-table) (function)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.8 Classes

Class: grammar ()
Package

fucc-generator

Source

fg-decl.lisp (file)

Direct superclasses

standard-object (class)

Direct methods
Direct slots
Slot: nterminals
Initargs

:nterminals

Readers

grammar-nterminals (generic function)

Writers

(setf grammar-nterminals) (generic function)

Slot: terminals
Initargs

:terminals

Readers

grammar-terminals (generic function)

Writers

(setf grammar-terminals) (generic function)

Slot: rules
Initargs

:rules

Readers

grammar-rules (generic function)

Writers

(setf grammar-rules) (generic function)

Slot: environment
Initargs

:environment

Initform

fucc-generator::*grammar-environment*

Readers

grammar-environment (generic function)

Writers

(setf grammar-environment) (generic function)

Slot: first-nterminal-id
Initargs

:first-nterminal-id

Initform

fucc-generator::*grammar-next-id*

Readers

first-nterminal-id (generic function)

Writers

(setf first-nterminal-id) (generic function)

Slot: prec-info
Type

list

Initargs

:precedence

Readers

grammar-prec-info (generic function)

Writers

(setf grammar-prec-info) (generic function)

Class: item ()
Package

fucc-generator

Source

fg-decl.lisp (file)

Direct superclasses

properties (class)

Direct methods
Direct slots
Slot: set
Initargs

:set

Readers

item-set (generic function)

Slot: index
Readers

item-index (generic function)

Writers

(setf item-index) (generic function)

Slot: moves
Readers

item-moves (generic function)

Writers

(setf item-moves) (generic function)

Class: nterm ()
Package

fucc-generator

Source

fg-decl.lisp (file)

Direct superclasses
Direct methods
Direct slots
Slot: name
Initargs

:name

Readers

nterm-name (generic function)

Writers

(setf nterm-name) (generic function)

Slot: rules
Initargs

:rules

Readers

nterm-rules (generic function)

Writers

(setf nterm-rules) (generic function)

Slot: id
Initargs

:id

Readers

nterm-id (generic function)

Writers

(setf nterm-id) (generic function)

Slot: is-terminal
Initargs

:is-terminal

Readers

terminal-p (generic function)

Writers

(setf terminal-p) (generic function)

Class: prec-mixin ()
Package

fucc-generator

Source

fg-decl.lisp (file)

Direct superclasses

standard-object (class)

Direct subclasses
Direct methods
Direct slots
Slot: priority
Type

number

Initargs

:priority

Initform

-1

Readers

prec-priority (generic function)

Writers

(setf prec-priority) (generic function)

Slot: assoc
Initargs

:assoc

Readers

prec-assoc (generic function)

Writers

(setf prec-assoc) (generic function)

Class: properties ()
Package

fucc-generator

Source

fg-decl.lisp (file)

Direct superclasses

standard-object (class)

Direct subclasses
Direct slots
Slot: %properties
Type

hash-table

Initform

(make-hash-table :test (quote eq))

Class: rule ()
Package

fucc-generator

Source

fg-decl.lisp (file)

Direct superclasses
Direct methods
Direct slots
Slot: left

Left-hand size: non-terminal

Initargs

:left

Readers
Writers
Slot: right

Right-hand side: list of terms

Initargs

:right

Readers
Writers
Slot: init-action

Action executed when rule is expanded.

Initargs

:init-action

Readers

rule-init-action (generic function)

Writers

(setf rule-init-action) (generic function)

Slot: middle-actions

List of middle actions

Initargs

:middle-actions

Readers

rule-middle-actions (generic function)

Writers

(setf rule-middle-actions) (generic function)

Slot: length

Cached length of right-hand side

Readers

rule-length (generic function)

Slot: index
Initargs

:index

Readers

rule-index (generic function)

Writers

(setf rule-index) (generic function)

Slot: action

Action of the rule that creates rule’s result

Initargs

:action

Initform

(error "action is not provided")

Readers

rule-action (generic function)

Writers

(setf rule-action) (generic function)


Previous: , Up: Internal definitions   [Contents][Index]

6.2.9 Types

Type: state-row ()
Package

fucc

Source

fucc-decl.lisp (file)

Type: term &optional MAX-TERM
Package

fucc

Source

fucc-decl.lisp (file)


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

Appendix A Indexes


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

A.1 Concepts

Jump to:   F   L   M  
Index Entry  Section

F
File, Lisp, fucc-generator.asd: The fucc-generator<dot>asd file
File, Lisp, fucc-generator/generator/fg-common.lisp: The fucc-generator/generator/fg-common<dot>lisp file
File, Lisp, fucc-generator/generator/fg-decl.lisp: The fucc-generator/generator/fg-decl<dot>lisp file
File, Lisp, fucc-generator/generator/fg-dump.lisp: The fucc-generator/generator/fg-dump<dot>lisp file
File, Lisp, fucc-generator/generator/fg-grammar-ll.lisp: The fucc-generator/generator/fg-grammar-ll<dot>lisp file
File, Lisp, fucc-generator/generator/fg-grammar-lr.lisp: The fucc-generator/generator/fg-grammar-lr<dot>lisp file
File, Lisp, fucc-generator/generator/fg-grammar.lisp: The fucc-generator/generator/fg-grammar<dot>lisp file
File, Lisp, fucc-generator/generator/fg-lalr.lisp: The fucc-generator/generator/fg-lalr<dot>lisp file
File, Lisp, fucc-generator/generator/fg-ll.lisp: The fucc-generator/generator/fg-ll<dot>lisp file
File, Lisp, fucc-generator/generator/fg-lr.lisp: The fucc-generator/generator/fg-lr<dot>lisp file
File, Lisp, fucc-generator/generator/fg-lr0.lisp: The fucc-generator/generator/fg-lr0<dot>lisp file
File, Lisp, fucc-generator/generator/fg-macro.lisp: The fucc-generator/generator/fg-macro<dot>lisp file
File, Lisp, fucc-generator/generator/fg-package.lisp: The fucc-generator/generator/fg-package<dot>lisp file
File, Lisp, fucc-generator/generator/fg-transform.lisp: The fucc-generator/generator/fg-transform<dot>lisp file
File, Lisp, fucc-generator/generator/fg-util.lisp: The fucc-generator/generator/fg-util<dot>lisp file
File, Lisp, fucc-parser.asd: The fucc-parser<dot>asd file
File, Lisp, fucc-parser/parser/fucc-decl.lisp: The fucc-parser/parser/fucc-decl<dot>lisp file
File, Lisp, fucc-parser/parser/fucc-ll.lisp: The fucc-parser/parser/fucc-ll<dot>lisp file
File, Lisp, fucc-parser/parser/fucc-package.lisp: The fucc-parser/parser/fucc-package<dot>lisp file
File, Lisp, fucc-parser/parser/fucc-parser.lisp: The fucc-parser/parser/fucc-parser<dot>lisp file
File, Lisp, fucc-parser/parser/fucc-util.lisp: The fucc-parser/parser/fucc-util<dot>lisp file
fucc-generator.asd: The fucc-generator<dot>asd file
fucc-generator/generator: The fucc-generator/generator module
fucc-generator/generator/fg-common.lisp: The fucc-generator/generator/fg-common<dot>lisp file
fucc-generator/generator/fg-decl.lisp: The fucc-generator/generator/fg-decl<dot>lisp file
fucc-generator/generator/fg-dump.lisp: The fucc-generator/generator/fg-dump<dot>lisp file
fucc-generator/generator/fg-grammar-ll.lisp: The fucc-generator/generator/fg-grammar-ll<dot>lisp file
fucc-generator/generator/fg-grammar-lr.lisp: The fucc-generator/generator/fg-grammar-lr<dot>lisp file
fucc-generator/generator/fg-grammar.lisp: The fucc-generator/generator/fg-grammar<dot>lisp file
fucc-generator/generator/fg-lalr.lisp: The fucc-generator/generator/fg-lalr<dot>lisp file
fucc-generator/generator/fg-ll.lisp: The fucc-generator/generator/fg-ll<dot>lisp file
fucc-generator/generator/fg-lr.lisp: The fucc-generator/generator/fg-lr<dot>lisp file
fucc-generator/generator/fg-lr0.lisp: The fucc-generator/generator/fg-lr0<dot>lisp file
fucc-generator/generator/fg-macro.lisp: The fucc-generator/generator/fg-macro<dot>lisp file
fucc-generator/generator/fg-package.lisp: The fucc-generator/generator/fg-package<dot>lisp file
fucc-generator/generator/fg-transform.lisp: The fucc-generator/generator/fg-transform<dot>lisp file
fucc-generator/generator/fg-util.lisp: The fucc-generator/generator/fg-util<dot>lisp file
fucc-parser.asd: The fucc-parser<dot>asd file
fucc-parser/parser: The fucc-parser/parser module
fucc-parser/parser/fucc-decl.lisp: The fucc-parser/parser/fucc-decl<dot>lisp file
fucc-parser/parser/fucc-ll.lisp: The fucc-parser/parser/fucc-ll<dot>lisp file
fucc-parser/parser/fucc-package.lisp: The fucc-parser/parser/fucc-package<dot>lisp file
fucc-parser/parser/fucc-parser.lisp: The fucc-parser/parser/fucc-parser<dot>lisp file
fucc-parser/parser/fucc-util.lisp: The fucc-parser/parser/fucc-util<dot>lisp file

L
Lisp File, fucc-generator.asd: The fucc-generator<dot>asd file
Lisp File, fucc-generator/generator/fg-common.lisp: The fucc-generator/generator/fg-common<dot>lisp file
Lisp File, fucc-generator/generator/fg-decl.lisp: The fucc-generator/generator/fg-decl<dot>lisp file
Lisp File, fucc-generator/generator/fg-dump.lisp: The fucc-generator/generator/fg-dump<dot>lisp file
Lisp File, fucc-generator/generator/fg-grammar-ll.lisp: The fucc-generator/generator/fg-grammar-ll<dot>lisp file
Lisp File, fucc-generator/generator/fg-grammar-lr.lisp: The fucc-generator/generator/fg-grammar-lr<dot>lisp file
Lisp File, fucc-generator/generator/fg-grammar.lisp: The fucc-generator/generator/fg-grammar<dot>lisp file
Lisp File, fucc-generator/generator/fg-lalr.lisp: The fucc-generator/generator/fg-lalr<dot>lisp file
Lisp File, fucc-generator/generator/fg-ll.lisp: The fucc-generator/generator/fg-ll<dot>lisp file
Lisp File, fucc-generator/generator/fg-lr.lisp: The fucc-generator/generator/fg-lr<dot>lisp file
Lisp File, fucc-generator/generator/fg-lr0.lisp: The fucc-generator/generator/fg-lr0<dot>lisp file
Lisp File, fucc-generator/generator/fg-macro.lisp: The fucc-generator/generator/fg-macro<dot>lisp file
Lisp File, fucc-generator/generator/fg-package.lisp: The fucc-generator/generator/fg-package<dot>lisp file
Lisp File, fucc-generator/generator/fg-transform.lisp: The fucc-generator/generator/fg-transform<dot>lisp file
Lisp File, fucc-generator/generator/fg-util.lisp: The fucc-generator/generator/fg-util<dot>lisp file
Lisp File, fucc-parser.asd: The fucc-parser<dot>asd file
Lisp File, fucc-parser/parser/fucc-decl.lisp: The fucc-parser/parser/fucc-decl<dot>lisp file
Lisp File, fucc-parser/parser/fucc-ll.lisp: The fucc-parser/parser/fucc-ll<dot>lisp file
Lisp File, fucc-parser/parser/fucc-package.lisp: The fucc-parser/parser/fucc-package<dot>lisp file
Lisp File, fucc-parser/parser/fucc-parser.lisp: The fucc-parser/parser/fucc-parser<dot>lisp file
Lisp File, fucc-parser/parser/fucc-util.lisp: The fucc-parser/parser/fucc-util<dot>lisp file

M
Module, fucc-generator/generator: The fucc-generator/generator module
Module, fucc-parser/parser: The fucc-parser/parser module

Jump to:   F   L   M  

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

A.2 Functions

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

(
(setf channels): Internal functions
(setf epsilon-action): Internal functions
(setf first-nterminal-id): Internal generic functions
(setf first-nterminal-id): Internal generic functions
(setf grammar-environment): Internal generic functions
(setf grammar-environment): Internal generic functions
(setf grammar-nterminals): Internal generic functions
(setf grammar-nterminals): Internal generic functions
(setf grammar-prec-info): Internal generic functions
(setf grammar-prec-info): Internal generic functions
(setf grammar-rules): Internal generic functions
(setf grammar-rules): Internal generic functions
(setf grammar-terminals): Internal generic functions
(setf grammar-terminals): Internal generic functions
(setf item-index): Internal generic functions
(setf item-index): Internal generic functions
(setf item-kernel): Internal functions
(setf item-moves): Internal generic functions
(setf item-moves): Internal generic functions
(setf lr-config-data-stack): Internal functions
(setf lr-config-state-stack): Internal functions
(setf lr-config-term-stack): Internal functions
(setf lrpoint-lahead): Internal functions
(setf lrpoint-pos): Internal functions
(setf lrpoint-rule): Internal functions
(setf nterm-first): Internal functions
(setf nterm-follow): Internal functions
(setf nterm-id): Internal generic functions
(setf nterm-id): Internal generic functions
(setf nterm-name): Internal generic functions
(setf nterm-name): Internal generic functions
(setf nterm-rules): Internal generic functions
(setf nterm-rules): Internal generic functions
(setf nterm-used): Internal functions
(setf prec-assoc): Internal generic functions
(setf prec-assoc): Internal generic functions
(setf prec-priority): Internal generic functions
(setf prec-priority): Internal generic functions
(setf productive): Internal functions
(setf reduce-action-function): Internal functions
(setf reduce-action-len): Internal functions
(setf reduce-action-term): Internal functions
(setf rm-info): Internal functions
(setf rule-action): Internal generic functions
(setf rule-action): Internal generic functions
(setf rule-index): Internal generic functions
(setf rule-index): Internal generic functions
(setf rule-init-action): Internal generic functions
(setf rule-init-action): Internal generic functions
(setf rule-left): Internal generic functions
(setf rule-left): Internal generic functions
(setf rule-middle-actions): Internal generic functions
(setf rule-middle-actions): Internal generic functions
(setf rule-nterminal): Internal generic functions
(setf rule-nterminal): Internal generic functions
(setf rule-production): Internal generic functions
(setf rule-production): Internal generic functions
(setf rule-right): Internal generic functions
(setf rule-right): Internal generic functions
(setf rule-right): Internal generic functions
(setf shift-action-new-state): Internal functions
(setf spontaneous-laheads): Internal functions
(setf state-id): Internal functions
(setf state-table): Internal functions
(setf terminal-p): Internal generic functions
(setf terminal-p): Internal generic functions

A
accept-action-p: Internal functions
accept-set-slr-helper: Internal functions
action-type: Internal functions
add-epsilon: Internal functions
add-nterm: Internal functions
add-to-maximal-actions: Internal functions
advance-lrpoint: Internal functions
alist-to-hash-table: Internal functions
apply-argument-transforms-to-action: Internal functions
attribute-form-p: Internal functions

B
bin-search-goto-table: Internal functions

C
calculate-epsilon-actions: Internal functions
calculate-first: Internal functions
calculate-follow: Internal functions
calculate-rm-info: Internal functions
chain-rule-p: Internal functions
channels: Internal functions
closure: Internal functions
closure-lr0: Internal functions
closure-lr1: Internal functions
combine-first: Internal functions
combine-first-sets: Internal macros
compare-actions: Internal functions
complex-attribute-form-p: Internal functions
convert-to-deterministic-ll-table: Internal functions
copy-accept-action: Internal functions
copy-error-action: Internal functions
copy-lr-config: Internal functions
copy-lrpoint: Internal functions
copy-reduce-action: Internal functions
copy-shift-action: Internal functions
copy-state: Internal functions

D
define-property: Internal macros
defparser: Exported macros
delete-unproductive-nterm-rules: Internal functions
delete-unused-term-rules: Internal functions
det-ll-table->list-ll-parser-data: Internal functions
dump-action-to-2d: Internal functions
dump-goto-to-2d: Internal functions
dump-to-2d-and-1d: Internal functions
dump-to-2d-tables: Internal functions
dump-valid-terminals: Internal functions

E
epsilon-action: Internal functions
epsilon-rule-p: Internal functions
error-action-p: Internal functions
error-config: Internal generic functions
error-config: Internal generic functions
error-data: Internal generic functions
error-data: Internal generic functions
error-token-id: Internal generic functions
error-token-id: Internal generic functions
expand-action: Internal functions
expand-action--class: Internal functions
expand-action--do: Internal functions
expand-complex-form-lr: Internal functions
expand-form-ll: Internal functions
expand-inlinable-form-lr: Internal functions
expand-middle-actions-in-rule-lr: Internal functions
expand-middle-actions-lr: Internal functions
expand-rhs: Internal functions
expand-rules*: Internal functions
expand-rules-ll: Internal functions
expand-rules-lr: Internal functions

F
filter-rule: Internal functions
first-nterminal-id: Internal generic functions
first-nterminal-id: Internal generic functions
Function, (setf lr-config-data-stack): Internal functions
Function, (setf lr-config-state-stack): Internal functions
Function, (setf lr-config-term-stack): Internal functions
Function, (setf lrpoint-lahead): Internal functions
Function, (setf lrpoint-pos): Internal functions
Function, (setf lrpoint-rule): Internal functions
Function, (setf reduce-action-function): Internal functions
Function, (setf reduce-action-len): Internal functions
Function, (setf reduce-action-term): Internal functions
Function, (setf shift-action-new-state): Internal functions
Function, (setf state-id): Internal functions
Function, (setf state-table): Internal functions
Function, accept-action-p: Internal functions
Function, accept-set-slr-helper: Internal functions
Function, action-type: Internal functions
Function, add-epsilon: Internal functions
Function, add-nterm: Internal functions
Function, add-to-maximal-actions: Internal functions
Function, advance-lrpoint: Internal functions
Function, alist-to-hash-table: Internal functions
Function, apply-argument-transforms-to-action: Internal functions
Function, attribute-form-p: Internal functions
Function, bin-search-goto-table: Internal functions
Function, calculate-epsilon-actions: Internal functions
Function, calculate-first: Internal functions
Function, calculate-follow: Internal functions
Function, calculate-rm-info: Internal functions
Function, chain-rule-p: Internal functions
Function, channels: Internal functions
Function, closure: Internal functions
Function, closure-lr0: Internal functions
Function, closure-lr1: Internal functions
Function, combine-first: Internal functions
Function, compare-actions: Internal functions
Function, complex-attribute-form-p: Internal functions
Function, convert-to-deterministic-ll-table: Internal functions
Function, copy-accept-action: Internal functions
Function, copy-error-action: Internal functions
Function, copy-lr-config: Internal functions
Function, copy-lrpoint: Internal functions
Function, copy-reduce-action: Internal functions
Function, copy-shift-action: Internal functions
Function, copy-state: Internal functions
Function, delete-unproductive-nterm-rules: Internal functions
Function, delete-unused-term-rules: Internal functions
Function, det-ll-table->list-ll-parser-data: Internal functions
Function, dump-action-to-2d: Internal functions
Function, dump-goto-to-2d: Internal functions
Function, dump-to-2d-and-1d: Internal functions
Function, dump-to-2d-tables: Internal functions
Function, dump-valid-terminals: Internal functions
Function, epsilon-action: Internal functions
Function, epsilon-rule-p: Internal functions
Function, error-action-p: Internal functions
Function, expand-action: Internal functions
Function, expand-action--class: Internal functions
Function, expand-action--do: Internal functions
Function, expand-complex-form-lr: Internal functions
Function, expand-form-ll: Internal functions
Function, expand-inlinable-form-lr: Internal functions
Function, expand-middle-actions-in-rule-lr: Internal functions
Function, expand-middle-actions-lr: Internal functions
Function, expand-rhs: Internal functions
Function, expand-rules*: Internal functions
Function, expand-rules-ll: Internal functions
Function, expand-rules-lr: Internal functions
Function, filter-rule: Internal functions
Function, generate-laheads: Internal functions
Function, generate-tables: Internal functions
Function, get-epsilon-reductions: Internal functions
Function, get-nterm: Internal functions
Function, get-uniq-id: Internal functions
Function, goto-lr0: Internal functions
Function, goto-lr1: Internal functions
Function, goto-nc: Internal functions
Function, iget: Internal functions
Function, init-env: Internal functions
Function, itable-to-list: Internal functions
Function, item-first: Internal functions
Function, item-hash: Internal functions
Function, item-kernel: Internal functions
Function, item=: Internal functions
Function, items: Internal functions
Function, items-lalr: Internal functions
Function, items-lr0: Internal functions
Function, items-lr1: Internal functions
Function, kernel: Internal functions
Function, kernel-lrpoint-p: Internal functions
Function, linearize-conflicts: Internal functions
Function, list-cmp: Internal functions
Function, ll-rule-actions: Internal functions
Function, ll-rule-nterms: Internal functions
Function, ll-terminal-p: Internal functions
Function, longer-p: Internal functions
Function, lr-config-data-stack: Internal functions
Function, lr-config-p: Internal functions
Function, lr-config-state-stack: Internal functions
Function, lr-config-term-stack: Internal functions
Function, lrpoint-hash: Internal functions
Function, lrpoint-lahead: Internal functions
Function, lrpoint-p: Internal functions
Function, lrpoint-pos: Internal functions
Function, lrpoint-rule: Internal functions
Function, lrpoint<=: Internal functions
Function, lrpoint=: Internal functions
Function, make-accept-action: Internal functions
Function, make-deterministic-ll-parser-data: Internal functions
Function, make-error-action: Internal functions
Function, make-grammar: Internal functions
Function, make-item: Internal functions
Function, make-ll-table: Internal functions
Function, make-lr-config: Internal functions
Function, make-lrpoint: Internal functions
Function, make-nterm: Internal functions
Function, make-reduce-action: Internal functions
Function, make-rule: Internal functions
Function, make-shift-action: Internal functions
Function, make-state: Internal functions
Function, negative->nt: Internal functions
Function, nsplit-list: Internal functions
Function, nt->negative: Internal functions
Function, nterm-at-pos: Internal functions
Function, nterm-by-name: Internal functions
Function, nterm-first: Internal functions
Function, nterm-follow: Internal functions
Function, nterm-used: Internal functions
Function, nterm<=: Internal functions
Function, nterminal-epsilon-rules: Internal functions
Function, nterminal-id: Internal functions
Function, ocons: Internal functions
Function, ointersection: Internal functions
Function, one-step-chain-rule-p: Internal functions
Function, oset-ordering: Internal functions
Function, ounion: Internal functions
Function, parse-complex-form-lr: Internal functions
Function, parse-grammar: Internal functions
Function, parser-ll: Exported functions
Function, parser-lr: Exported functions
Function, parser-lr--reduce!: Internal functions
Function, parser-lr--shift!: Internal functions
Function, pop-n-stack: Internal functions
Function, process-rule: Internal functions
Function, productive: Internal functions
Function, prop-bound-p: Internal functions
Function, reduce-action: Internal functions
Function, reduce-action-function: Internal functions
Function, reduce-action-len: Internal functions
Function, reduce-action-p: Internal functions
Function, reduce-action-term: Internal functions
Function, reduce-set-lalr: Internal functions
Function, reduce-set-lr0: Internal functions
Function, reduce-set-lr1: Internal functions
Function, reduce-set-slr: Internal functions
Function, reduction-lrpoint-p: Internal functions
Function, remove-chain-rules: Internal functions
Function, remove-epsilon: Internal functions
Function, remove-epsilon-rules: Internal functions
Function, renumber-rules: Internal functions
Function, report-conflict-and-ret: Internal functions
Function, resolve-simple-conflicts: Internal functions
Function, rm-info: Internal functions
Function, rule->ll-rule: Internal functions
Function, seq-first: Internal functions
Function, set-channel-info: Internal functions
Function, set-precedence-info: Internal functions
Function, set-spontaneous-lahead-info: Internal functions
Function, shift-action-new-state: Internal functions
Function, shift-action-p: Internal functions
Function, simple-lrpoint: Internal functions
Function, split-rule-form: Internal functions
Function, spontaneous-laheads: Internal functions
Function, spread-laheads: Internal functions
Function, state-id: Internal functions
Function, state-p: Internal functions
Function, state-table: Internal functions
Function, update-rm-info: Internal functions

G
generate-laheads: Internal functions
generate-tables: Internal functions
Generic Function, (setf first-nterminal-id): Internal generic functions
Generic Function, (setf grammar-environment): Internal generic functions
Generic Function, (setf grammar-nterminals): Internal generic functions
Generic Function, (setf grammar-prec-info): Internal generic functions
Generic Function, (setf grammar-rules): Internal generic functions
Generic Function, (setf grammar-terminals): Internal generic functions
Generic Function, (setf item-index): Internal generic functions
Generic Function, (setf item-moves): Internal generic functions
Generic Function, (setf nterm-id): Internal generic functions
Generic Function, (setf nterm-name): Internal generic functions
Generic Function, (setf nterm-rules): Internal generic functions
Generic Function, (setf prec-assoc): Internal generic functions
Generic Function, (setf prec-priority): Internal generic functions
Generic Function, (setf rule-action): Internal generic functions
Generic Function, (setf rule-index): Internal generic functions
Generic Function, (setf rule-init-action): Internal generic functions
Generic Function, (setf rule-left): Internal generic functions
Generic Function, (setf rule-middle-actions): Internal generic functions
Generic Function, (setf rule-nterminal): Internal generic functions
Generic Function, (setf rule-production): Internal generic functions
Generic Function, (setf rule-right): Internal generic functions
Generic Function, (setf terminal-p): Internal generic functions
Generic Function, error-config: Internal generic functions
Generic Function, error-data: Internal generic functions
Generic Function, error-token-id: Internal generic functions
Generic Function, first-nterminal-id: Internal generic functions
Generic Function, grammar-environment: Internal generic functions
Generic Function, grammar-nterminals: Internal generic functions
Generic Function, grammar-prec-info: Internal generic functions
Generic Function, grammar-rules: Internal generic functions
Generic Function, grammar-terminals: Internal generic functions
Generic Function, item-index: Internal generic functions
Generic Function, item-moves: Internal generic functions
Generic Function, item-set: Internal generic functions
Generic Function, nterm-id: Internal generic functions
Generic Function, nterm-name: Internal generic functions
Generic Function, nterm-rules: Internal generic functions
Generic Function, possible-actions: Internal generic functions
Generic Function, prec-assoc: Internal generic functions
Generic Function, prec-priority: Internal generic functions
Generic Function, rule-action: Internal generic functions
Generic Function, rule-index: Internal generic functions
Generic Function, rule-init-action: Internal generic functions
Generic Function, rule-left: Internal generic functions
Generic Function, rule-length: Internal generic functions
Generic Function, rule-middle-actions: Internal generic functions
Generic Function, rule-nterminal: Internal generic functions
Generic Function, rule-production: Internal generic functions
Generic Function, rule-right: Internal generic functions
Generic Function, terminal-p: Internal generic functions
get-epsilon-reductions: Internal functions
get-nterm: Internal functions
get-uniq-id: Internal functions
goto-lr0: Internal functions
goto-lr1: Internal functions
goto-nc: Internal functions
grammar-environment: Internal generic functions
grammar-environment: Internal generic functions
grammar-nterminals: Internal generic functions
grammar-nterminals: Internal generic functions
grammar-prec-info: Internal generic functions
grammar-prec-info: Internal generic functions
grammar-rules: Internal generic functions
grammar-rules: Internal generic functions
grammar-terminals: Internal generic functions
grammar-terminals: Internal generic functions

I
iget: Internal functions
init-env: Internal functions
itable-to-list: Internal functions
item-first: Internal functions
item-hash: Internal functions
item-index: Internal generic functions
item-index: Internal generic functions
item-kernel: Internal functions
item-moves: Internal generic functions
item-moves: Internal generic functions
item-set: Internal generic functions
item-set: Internal generic functions
item=: Internal functions
items: Internal functions
items-lalr: Internal functions
items-lr0: Internal functions
items-lr1: Internal functions

K
kernel: Internal functions
kernel-lrpoint-p: Internal functions

L
linearize-conflicts: Internal functions
list-cmp: Internal functions
ll-final-action: Internal macros
ll-middle-action: Internal macros
ll-rule-actions: Internal functions
ll-rule-nterms: Internal functions
ll-terminal-p: Internal functions
longer-p: Internal functions
lr-config-data-stack: Internal functions
lr-config-p: Internal functions
lr-config-state-stack: Internal functions
lr-config-term-stack: Internal functions
lrpoint-hash: Internal functions
lrpoint-lahead: Internal functions
lrpoint-p: Internal functions
lrpoint-pos: Internal functions
lrpoint-rule: Internal functions
lrpoint<=: Internal functions
lrpoint=: Internal functions

M
Macro, combine-first-sets: Internal macros
Macro, define-property: Internal macros
Macro, defparser: Exported macros
Macro, ll-final-action: Internal macros
Macro, ll-middle-action: Internal macros
Macro, opush: Internal macros
Macro, rev-apply: Internal macros
Macro, stack-popper: Internal macros
Macro, with-lr-config: Internal macros
Macro, with-new-grammar-environment: Internal macros
make-accept-action: Internal functions
make-deterministic-ll-parser-data: Internal functions
make-error-action: Internal functions
make-grammar: Internal functions
make-item: Internal functions
make-ll-table: Internal functions
make-lr-config: Internal functions
make-lrpoint: Internal functions
make-nterm: Internal functions
make-reduce-action: Internal functions
make-rule: Internal functions
make-shift-action: Internal functions
make-state: Internal functions
Method, (setf first-nterminal-id): Internal generic functions
Method, (setf grammar-environment): Internal generic functions
Method, (setf grammar-nterminals): Internal generic functions
Method, (setf grammar-prec-info): Internal generic functions
Method, (setf grammar-rules): Internal generic functions
Method, (setf grammar-terminals): Internal generic functions
Method, (setf item-index): Internal generic functions
Method, (setf item-moves): Internal generic functions
Method, (setf nterm-id): Internal generic functions
Method, (setf nterm-name): Internal generic functions
Method, (setf nterm-rules): Internal generic functions
Method, (setf prec-assoc): Internal generic functions
Method, (setf prec-priority): Internal generic functions
Method, (setf rule-action): Internal generic functions
Method, (setf rule-index): Internal generic functions
Method, (setf rule-init-action): Internal generic functions
Method, (setf rule-left): Internal generic functions
Method, (setf rule-middle-actions): Internal generic functions
Method, (setf rule-nterminal): Internal generic functions
Method, (setf rule-production): Internal generic functions
Method, (setf rule-right): Internal generic functions
Method, (setf rule-right): Internal generic functions
Method, (setf terminal-p): Internal generic functions
Method, error-config: Internal generic functions
Method, error-data: Internal generic functions
Method, error-token-id: Internal generic functions
Method, first-nterminal-id: Internal generic functions
Method, grammar-environment: Internal generic functions
Method, grammar-nterminals: Internal generic functions
Method, grammar-prec-info: Internal generic functions
Method, grammar-rules: Internal generic functions
Method, grammar-terminals: Internal generic functions
Method, item-index: Internal generic functions
Method, item-moves: Internal generic functions
Method, item-set: Internal generic functions
Method, nterm-id: Internal generic functions
Method, nterm-name: Internal generic functions
Method, nterm-name: Internal generic functions
Method, nterm-rules: Internal generic functions
Method, possible-actions: Internal generic functions
Method, prec-assoc: Internal generic functions
Method, prec-priority: Internal generic functions
Method, prec-priority: Internal generic functions
Method, rule-action: Internal generic functions
Method, rule-index: Internal generic functions
Method, rule-init-action: Internal generic functions
Method, rule-left: Internal generic functions
Method, rule-length: Internal generic functions
Method, rule-middle-actions: Internal generic functions
Method, rule-nterminal: Internal generic functions
Method, rule-production: Internal generic functions
Method, rule-right: Internal generic functions
Method, terminal-p: Internal generic functions
Method, terminal-p: Internal generic functions

N
negative->nt: Internal functions
nsplit-list: Internal functions
nt->negative: Internal functions
nterm-at-pos: Internal functions
nterm-by-name: Internal functions
nterm-first: Internal functions
nterm-follow: Internal functions
nterm-id: Internal generic functions
nterm-id: Internal generic functions
nterm-name: Internal generic functions
nterm-name: Internal generic functions
nterm-name: Internal generic functions
nterm-rules: Internal generic functions
nterm-rules: Internal generic functions
nterm-used: Internal functions
nterm<=: Internal functions
nterminal-epsilon-rules: Internal functions
nterminal-id: Internal functions

O
ocons: Internal functions
ointersection: Internal functions
one-step-chain-rule-p: Internal functions
opush: Internal macros
oset-ordering: Internal functions
ounion: Internal functions

P
parse-complex-form-lr: Internal functions
parse-grammar: Internal functions
parser-ll: Exported functions
parser-lr: Exported functions
parser-lr--reduce!: Internal functions
parser-lr--shift!: Internal functions
pop-n-stack: Internal functions
possible-actions: Internal generic functions
possible-actions: Internal generic functions
prec-assoc: Internal generic functions
prec-assoc: Internal generic functions
prec-priority: Internal generic functions
prec-priority: Internal generic functions
prec-priority: Internal generic functions
process-rule: Internal functions
productive: Internal functions
prop-bound-p: Internal functions

R
reduce-action: Internal functions
reduce-action-function: Internal functions
reduce-action-len: Internal functions
reduce-action-p: Internal functions
reduce-action-term: Internal functions
reduce-set-lalr: Internal functions
reduce-set-lr0: Internal functions
reduce-set-lr1: Internal functions
reduce-set-slr: Internal functions
reduction-lrpoint-p: Internal functions
remove-chain-rules: Internal functions
remove-epsilon: Internal functions
remove-epsilon-rules: Internal functions
renumber-rules: Internal functions
report-conflict-and-ret: Internal functions
resolve-simple-conflicts: Internal functions
rev-apply: Internal macros
rm-info: Internal functions
rule->ll-rule: Internal functions
rule-action: Internal generic functions
rule-action: Internal generic functions
rule-index: Internal generic functions
rule-index: Internal generic functions
rule-init-action: Internal generic functions
rule-init-action: Internal generic functions
rule-left: Internal generic functions
rule-left: Internal generic functions
rule-length: Internal generic functions
rule-length: Internal generic functions
rule-middle-actions: Internal generic functions
rule-middle-actions: Internal generic functions
rule-nterminal: Internal generic functions
rule-nterminal: Internal generic functions
rule-production: Internal generic functions
rule-production: Internal generic functions
rule-right: Internal generic functions
rule-right: Internal generic functions

S
seq-first: Internal functions
set-channel-info: Internal functions
set-precedence-info: Internal functions
set-spontaneous-lahead-info: Internal functions
Setf Expander, (setf channels): Internal functions
Setf Expander, (setf epsilon-action): Internal functions
Setf Expander, (setf item-kernel): Internal functions
Setf Expander, (setf nterm-first): Internal functions
Setf Expander, (setf nterm-follow): Internal functions
Setf Expander, (setf nterm-used): Internal functions
Setf Expander, (setf productive): Internal functions
Setf Expander, (setf rm-info): Internal functions
Setf Expander, (setf spontaneous-laheads): Internal functions
shift-action-new-state: Internal functions
shift-action-p: Internal functions
simple-lrpoint: Internal functions
split-rule-form: Internal functions
spontaneous-laheads: Internal functions
spread-laheads: Internal functions
stack-popper: Internal macros
state-id: Internal functions
state-p: Internal functions
state-table: Internal functions

T
terminal-p: Internal generic functions
terminal-p: Internal generic functions
terminal-p: Internal generic functions

U
update-rm-info: Internal functions

W
with-lr-config: Internal macros
with-new-grammar-environment: Internal macros

Jump to:   (  
A   B   C   D   E   F   G   I   K   L   M   N   O   P   R   S   T   U   W  

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

A.3 Variables

Jump to:   %   *   +  
A   C   D   E   F   I   L   M   N   P   R   S   T  
Index Entry  Section

%
%properties: Internal classes

*
*action-forms*: Internal special variables
*counter*: Internal special variables
*grammar-environment*: Internal special variables
*grammar-next-id*: Internal special variables
*next-data*: Exported special variables
*next-token*: Exported special variables

+
+attribute-form+: Internal special variables
+complex-attribute-form+: Internal special variables
+complex-forms-ll+: Internal special variables
+complex-forms-lr+: Internal special variables
+eof+: Internal constants
+inlineable-forms-lr+: Internal special variables
+start+: Internal constants
+wildcard+: Internal special variables

A
action: Internal classes
assoc: Internal classes

C
config: Exported conditions
Constant, +eof+: Internal constants
Constant, +start+: Internal constants

D
data: Exported conditions
data-stack: Internal structures

E
environment: Internal classes

F
first-nterminal-id: Internal classes
function: Internal structures

I
id: Internal structures
id: Internal classes
index: Internal classes
index: Internal classes
init-action: Internal classes
is-terminal: Internal classes

L
lahead: Internal structures
left: Internal classes
len: Internal structures
length: Internal classes

M
middle-actions: Internal classes
moves: Internal classes

N
name: Internal classes
new-state: Internal structures
nterminals: Internal classes

P
pos: Internal structures
possible-actions: Internal conditions
prec-info: Internal classes
priority: Internal classes

R
right: Internal classes
rule: Internal structures
rules: Internal classes
rules: Internal classes

S
set: Internal classes
Slot, %properties: Internal classes
Slot, action: Internal classes
Slot, assoc: Internal classes
Slot, config: Exported conditions
Slot, data: Exported conditions
Slot, data-stack: Internal structures
Slot, environment: Internal classes
Slot, first-nterminal-id: Internal classes
Slot, function: Internal structures
Slot, id: Internal structures
Slot, id: Internal classes
Slot, index: Internal classes
Slot, index: Internal classes
Slot, init-action: Internal classes
Slot, is-terminal: Internal classes
Slot, lahead: Internal structures
Slot, left: Internal classes
Slot, len: Internal structures
Slot, length: Internal classes
Slot, middle-actions: Internal classes
Slot, moves: Internal classes
Slot, name: Internal classes
Slot, new-state: Internal structures
Slot, nterminals: Internal classes
Slot, pos: Internal structures
Slot, possible-actions: Internal conditions
Slot, prec-info: Internal classes
Slot, priority: Internal classes
Slot, right: Internal classes
Slot, rule: Internal structures
Slot, rules: Internal classes
Slot, rules: Internal classes
Slot, set: Internal classes
Slot, state-stack: Internal structures
Slot, table: Internal structures
Slot, term: Internal structures
Slot, term-stack: Internal structures
Slot, terminals: Internal classes
Slot, token-id: Exported conditions
Special Variable, *action-forms*: Internal special variables
Special Variable, *counter*: Internal special variables
Special Variable, *grammar-environment*: Internal special variables
Special Variable, *grammar-next-id*: Internal special variables
Special Variable, *next-data*: Exported special variables
Special Variable, *next-token*: Exported special variables
Special Variable, +attribute-form+: Internal special variables
Special Variable, +complex-attribute-form+: Internal special variables
Special Variable, +complex-forms-ll+: Internal special variables
Special Variable, +complex-forms-lr+: Internal special variables
Special Variable, +inlineable-forms-lr+: Internal special variables
Special Variable, +wildcard+: Internal special variables
state-stack: Internal structures

T
table: Internal structures
term: Internal structures
term-stack: Internal structures
terminals: Internal classes
token-id: Exported conditions

Jump to:   %   *   +  
A   C   D   E   F   I   L   M   N   P   R   S   T  

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

A.4 Data types

Jump to:   A   C   E   F   G   I   L   N   P   R   S   T  
Index Entry  Section

A
accept-action: Internal structures

C
Class, grammar: Internal classes
Class, item: Internal classes
Class, nterm: Internal classes
Class, prec-mixin: Internal classes
Class, properties: Internal classes
Class, rule: Internal classes
Condition, lr-parse-error-condition: Exported conditions
Condition, parse-conflict-condition: Internal conditions
Condition, parse-error-condition: Exported conditions

E
error-action: Internal structures

F
fucc: The fucc package
fucc-generator: The fucc-generator system
fucc-generator: The fucc-generator package
fucc-parser: The fucc-parser system

G
grammar: Internal classes

I
item: Internal classes

L
lr-config: Internal structures
lr-parse-error-condition: Exported conditions
lrpoint: Internal structures

N
nterm: Internal classes

P
Package, fucc: The fucc package
Package, fucc-generator: The fucc-generator package
parse-conflict-condition: Internal conditions
parse-error-condition: Exported conditions
prec-mixin: Internal classes
properties: Internal classes

R
reduce-action: Internal structures
rule: Internal classes

S
shift-action: Internal structures
state: Internal structures
state-row: Internal types
Structure, accept-action: Internal structures
Structure, error-action: Internal structures
Structure, lr-config: Internal structures
Structure, lrpoint: Internal structures
Structure, reduce-action: Internal structures
Structure, shift-action: Internal structures
Structure, state: Internal structures
System, fucc-generator: The fucc-generator system
System, fucc-parser: The fucc-parser system

T
term: Internal types
Type, state-row: Internal types
Type, term: Internal types

Jump to:   A   C   E   F   G   I   L   N   P   R   S   T