Positions in the input of the lexical scanner
List of Import References :
See BOOL
See Char
See DENOTATION
See Int
See Nat
See Option
See PrettyPrinter
See Real
See Seq
See String
SIGNATURE LexScanPosition
$Date: 2012-10-02 14:17:54 +0200 (Tue, 02 Oct 2012) $ ($Revision: 838 $)
IMPORT Nat ONLY nat PrettyPrinter ONLY doc TYPE position == position(row:nat,col:nat) unknown
Selective update
FUN :=_row: position ** nat -> position FUN :=_col: position ** nat -> position
First row, first column: position(1,1)
FUN origin: position
Advance row or column by 1 (advancing row resets column)
FUN advanceRow: position -> position FUN advanceCol: position -> position
Advance row or column by n (advancing row resets column)
FUN advanceRow: nat ** position -> position FUN advanceCol: nat ** position -> position
Adding or subtracting positions
FUN + : position ** position -> position FUN - : position ** position -> position
Showing positions
FUN ` : position -> denotation FUN pp: position -> doc
next node: LexScanPrim,
prev node: Subsystem Lexical Scanning,
up to node: Subsystem Lexical Scanning