# Class Cf_lex.cursor

    class cursor : ?c:counter -> string -> object .. end

A class derived from `Cf_parser.cursor` that intercepts newline characters to track the row and column of a cursor position. Use `new cursor ~c s` to construct an initial cursor position, optionally with the counter `c` (default: `counter_zero`), and a string `s` containing the character sequence that is recognized as a newline, e.g. "\013\010" indicates that newline is a CR LF sequence.
Inherits

- `Cf_parser.cursor`

    val row_ : int

The current row number

    val col_ : int

The current column number

    val nl0_ : char list

The newline sequence as a `char list`.

    val nlz_ : char list

The current tail of the newline.

    method private next : char -> int * int * char list

`self#next c` is called in the `advance` method to return a new values for the `row_`, `col_` and `nlz_` members.

    method counter : counter

Returns a new counter object containing the row, column and index of the current cursor position.

    method row : int

Returns the `row_` member.

    method col : int

Returns the `col_` member.