Package org.eclipse.jface.text.link

# Class LinkedPosition

java.lang.Object
org.eclipse.jface.text.Position
org.eclipse.jface.text.link.LinkedPosition

Direct Known Subclasses:
  `ProposalPosition`

public class LinkedPosition extends Position
A `Position` on a document that knows which document it is registered with and has a sequence number for tab stops.

Clients may extend this class.

Since:
  3.0

## Field Summary

### Fields inherited from class org.eclipse.jface.text.Position

`isDeleted, length, offset`

## Constructor Summary

Constructors
Constructor
Description
`LinkedPosition(IDocument document, int offset, int length)`
Creates a new instance.
`LinkedPosition(IDocument document, int offset, int length, int sequence)`
Creates a new instance.

## Method Summary

Modifier and Type
Method
Description
`boolean`
`equals(Object other)`
`String`
`getContent()`
Returns the content of this position on the referenced document.
`IDocument`
`getDocument()`
`int`
`getSequenceNumber()`
Returns the sequence number of this position.
`int`
`hashCode()`
`boolean`
`includes(int pOffset)`
Overrides `Position.includes(int)`so every offset is considered included that lies in between the first and last offset of this position, and offsets that are right at the end of the position.
`boolean`
`includes(DocumentEvent event)`
Returns whether this position includes `event`.
`protected boolean`
`includes(IDocument doc, int off, int len)`
Returns whether this position includes the range given by `offset` and `length`.
`boolean`
`includes(LinkedPosition position)`
Returns whether this position includes `position`.
`boolean`
`overlapsWith(LinkedPosition position)`
Returns whether this position overlaps with `position`.
`void`
`setSequenceNumber(int sequence)`
Sets the sequence number of this position.

### Methods inherited from class org.eclipse.jface.text.Position

`delete, getLength, getOffset, isDeleted, overlapsWith, setLength, setOffset, toString, undelete`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

## Constructor Details

### LinkedPosition

public LinkedPosition(IDocument document, int offset, int length, int sequence)
Creates a new instance.

Parameters:
  `document` - the document
  `offset` - the offset of the position
  `length` - the length of the position
  `sequence` - the iteration sequence rank

### LinkedPosition

public LinkedPosition(IDocument document, int offset, int length)
Creates a new instance. Equivalent to calling `LinkedPosition(document, offset, length, LinkedPositionGroup.NO_STOP)`

Parameters:
  `document` - the document
  `offset` - the offset of the position
  `length` - the length of the position

## Method Details

### getDocument

public IDocument getDocument()

Returns:
  Returns the document.

### equals

public boolean equals(Object other)

Overrides:
  `equals` in class `Position`

### overlapsWith

public boolean overlapsWith(LinkedPosition position)
Returns whether this position overlaps with `position`.

Parameters:
  `position` - the position to check.
Returns:
  `true` if this position overlaps with `position`,`false` otherwise

### includes

public boolean includes(DocumentEvent event)
Returns whether this position includes `event`.

Parameters:
  `event` - the event to check.
Returns:
  `true` if this position includes `event`, `false` otherwise

### includes

public boolean includes(LinkedPosition position)
Returns whether this position includes `position`.

Parameters:
  `position` - the position to check.
Returns:
  `true` if this position includes `position`,`false` otherwise

### includes

public boolean includes(int pOffset)
Overrides `Position.includes(int)`so every offset is considered included that lies in between the first and last offset of this position, and offsets that are right at the end of the position.

Overrides:
  `includes` in class `Position`
Parameters:
  `pOffset` - the offset to check
Returns:
  `true` if `pOffset` is in `[offset, offset + length]`

### includes

protected boolean includes(IDocument doc, int off, int len)
Returns whether this position includes the range given by `offset` and `length`. A range is included by a `LinkedPosition` if `includes(offset)` returns true for every offset in the range, including the borders of the range.

Parameters:
  `doc` - the document that the given range refers to, may be `null`
  `off` - the offset of the range, referring to `document`
  `len` - the length of the range
Returns:
  `true` if `doc` is the same document as this position refers to, and if the entire range is included in this position

### getContent

public String getContent() throws BadLocationException
Returns the content of this position on the referenced document.

Returns:
  the content of the document at this position
Throws:
  `BadLocationException` - if the position is not valid

### getSequenceNumber

public int getSequenceNumber()
Returns the sequence number of this position.

Returns:
  the sequence number of this position

### setSequenceNumber

public void setSequenceNumber(int sequence)
Sets the sequence number of this position.

Parameters:
  `sequence` - the new sequence number

### hashCode

public int hashCode()

Overrides:
  `hashCode` in class `Position`