Averest


AbbrevTable Type

An abbreviation table essentially consists of a map from boolean expressions to QNames. This mapping is viewed as abbreviation of the expression by a new boolean variable whose name is the QName. In contrast to the forward variant, new abbreviations can be created. To this end, the table has to generate new names which is done by storing in integer which is also the maximum number of boolean expressions abbreviated in the table.

Record fields

Record Field Description

keys

Full Usage: keys

Field type: List<QName>

Field type: List<QName>

nameStub

Full Usage: nameStub

Field type: string

Field type: string

nextIndex

Full Usage: nextIndex

Field type: int
Modifiers: mutable

Field type: int

table

Full Usage: table

Field type: Dictionary<BoolExpr, QName>

Field type: Dictionary<BoolExpr, QName>

Instance members

Instance member Description

this.printer

Full Usage: this.printer

Returns: PrnDrv -> unit

Printer of a table abbreviation table

Returns: PrnDrv -> unit

Static members

Static member Description

AbbrevTable.empty name

Full Usage: AbbrevTable.empty name

Parameters:
    name : string

Returns: AbbrevTable

Generates a new abbreviation table where the names of the variables used for the abbreviations start with two underscores and s. Note that the abbreviation tables must have different name stubs s.

name : string
Returns: AbbrevTable

AbbrevTable.ofList (stub, index) abrL

Full Usage: AbbrevTable.ofList (stub, index) abrL

Parameters:
    stub : string
    index : int
    abrL : (QName * BoolExpr option) list

Returns: AbbrevTable

Create abbreviation table from list. The list must contain different boolean expressions. The parameters stub and index are used to restore the ability to create new names.

stub : string
index : int
abrL : (QName * BoolExpr option) list
Returns: AbbrevTable

AbbrevTable.toActions bwd

Full Usage: AbbrevTable.toActions bwd

Parameters:
Returns: (QName * Decl) list * (BoolExpr * Action) list

Convert abbreviation table to declarations and actions

bwd : AbbrevTable
Returns: (QName * Decl) list * (BoolExpr * Action) list

AbbrevTable.toList bwd

Full Usage: AbbrevTable.toList bwd

Parameters:
Returns: (BoolExpr option * QName) list

Converts abbreviation table to list

bwd : AbbrevTable
Returns: (BoolExpr option * QName) list