Position

trait Position

Position is the base trait for objects describing a position in a document.

It provides functionality for:

  • generating a visual representation of this position (longString);
  • comparing two positions (<).

To use this class for a concrete kind of document, implement the lineContents method.

class Object
trait Matchable
class Any
object NoPosition.type

Value members

Abstract methods

def column: Int

The column number referred to by the position; column numbers start at 1.

The column number referred to by the position; column numbers start at 1.

def line: Int

The line number referred to by the position; line numbers start at 1.

The line number referred to by the position; line numbers start at 1.

protected def lineContents: String

The contents of the line at this position. (must not contain a new-line character).

The contents of the line at this position. (must not contain a new-line character).

Concrete methods

def <(that: Position): Boolean

Compare this position to another, by first comparing their line numbers, and then -- if necessary -- using the columns to break a tie.

Compare this position to another, by first comparing their line numbers, and then -- if necessary -- using the columns to break a tie.

Value parameters:
`that`

a Position to compare to this Position

Returns:

true if this position's line number or (in case of equal line numbers) column is smaller than the corresponding components of that

def longString: String

Returns a more visual representation of this position. More precisely, the resulting string consists of two lines:

Returns a more visual representation of this position. More precisely, the resulting string consists of two lines:

  1. the line in the document referred to by this position
  2. a caret indicating the column

Example:

  List(this, is, a, line, from, the, document)
               ^
override def toString: String

Returns a string representation of the Position, of the form line.column.

Returns a string representation of the Position, of the form line.column.

Definition Classes
Any