sealed trait HasStart extends Bounded with HasStartOrVoid
- Alphabetic
- By Inheritance
- HasStart
- HasStartOrVoid
- Bounded
- NonVoid
- SpanLike
- Writable
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Abstract Value Members
-
abstract
def
clip(pos: Long): Long
Clips a position to this span's boundary.
Clips a position to this span's boundary. Note that the span's stop position is included. Thus the result is greater than or equal the start, and less than or equal (!) the stop.
For the special cases of
Span.AllandSpan.Void, this method returns the argument unchanged.- pos
the point to clip
- returns
the clipped point
- Definition Classes
- SpanLike
-
abstract
def
compareStop(pos: Long): Int
Compares the span's stop to a given position
Compares the span's stop to a given position
- returns
-1, if the span stop lies before the query position,1, if it lies after that position, or0, if both are the same
- Definition Classes
- SpanLike
-
abstract
def
contains(that: SpanLike): Boolean
Checks if another span lies within the span.
Checks if another span lies within the span. The result is
falseif either of the two spans is void.- that
second span
- returns
true, ifthat.start >= this.start && that.stop <= this.stop
- Definition Classes
- SpanLike
-
abstract
def
contains(pos: Long): Boolean
Checks if a position lies within the span.
Checks if a position lies within the span. Note that this returns
falseifthis.stop == pos.- returns
true, ifstart <= pos < stop
- Definition Classes
- SpanLike
-
abstract
def
intersect(that: SpanLike): HasStartOrVoid
Construct the intersection between this and another span.
Construct the intersection between this and another span. If the two spans are disjoint, the result will be empty. An empty result may be a
Spanif the two spans touched each other, orSpan.Voidif they did not touch each other. If either span isSpan.All, the other span is returned. If either span is void,Span.Voidwill be returned.This method is commutative (
a intersect b == b intersect a).- that
the span to form the intersection with
- returns
the intersection span (possibly empty)
-
abstract
def
isEmpty: Boolean
Checks if the span is empty.
Checks if the span is empty. A span is empty if it is a
Spanwithstart == stopor if it is void.- returns
true, ifstart == stop
- Definition Classes
- SpanLike
-
abstract
def
nonEmpty: Boolean
Checks if the span is non empty.
Checks if the span is non empty. This is exactly the opposite value of
isEmpty.- Definition Classes
- SpanLike
-
abstract
def
nonEmptyOption: Option[HasStart]
- Definition Classes
- HasStartOrVoid → SpanLike
-
abstract
def
overlaps(that: SpanLike): Boolean
Checks if a two spans overlap each other.
Checks if a two spans overlap each other. Two spans overlap if the overlapping area is greater than or equal to 1. This implies that if either span is empty, the result will be
false.This method is commutative (
a overlaps b == b overlaps a).- that
second span
- returns
true, if the spans overlap each other
- Definition Classes
- SpanLike
-
abstract
def
shift(delta: Long): HasStart
Shifts the span, that is applies an offset to its start and stop.
Shifts the span, that is applies an offset to its start and stop. For single sided open spans (
Span.FromandSpan.Until) this alters the only bounded value. ForSpan.AllandSpan.Voidthis returns the object unchanged.- delta
the shift amount (the amount to be added to the span's positions)
- returns
the shifted span
- Definition Classes
- HasStart → HasStartOrVoid → Bounded → NonVoid → SpanLike
-
abstract
def
start: Long
- returns
the start position of the span. this is considered included in the interval
-
abstract
def
startOption: Option[Long]
- Definition Classes
- SpanLike
-
abstract
def
startOrElse(default: ⇒ Long): Long
- Definition Classes
- SpanLike
-
abstract
def
stopOption: Option[Long]
- Definition Classes
- SpanLike
-
abstract
def
stopOrElse(default: ⇒ Long): Long
- Definition Classes
- SpanLike
-
abstract
def
subtract(that: SpanLike): IndexedSeq[HasStart]
Subtracts a given span from this span.
Subtracts a given span from this span. Note that an empty span argument "cuts" this span, e.g.
Span.all subtract Span(30,30) == Seq(Span.until(30),Span.from(30))- that
the span to subtract
- returns
a collection of spans after the argument was subtracted. Unlike
intersect, this method filters out empty spans, thus a span subtracted from itself produces an empty collection. ifthatis aSpan, the result might be two disjoint spans.
-
abstract
def
subtract(that: Open): HasStartOrVoid
Subtracts a given open span from this span.
-
abstract
def
touches(that: SpanLike): Boolean
Checks if a two spans overlap or touch each other.
Checks if a two spans overlap or touch each other. Two spans touch each other if they either overlap or they share a common point with each other (this span's start or stop is that span's start or stop).
This method is commutative (
a touches b == b touches a).- that
second span
- returns
true, if the spans touch each other
- Definition Classes
- SpanLike
-
abstract
def
union(that: SpanLike): SpanLike
Constructs a single span which contains both
thisandthatspan.Constructs a single span which contains both
thisandthatspan. If the two spans are disjoint, the result will be a span withstart = min(this.start, that.start)andstop = max(this.stop, that.stop). If either span is void, the other span is returned. If either span isSpan.All,Span.Allwill be returned.This method is commutative (
a union b == b union a).- that
the span to form the union with
- returns
the encompassing span
- Definition Classes
- SpanLike
-
abstract
def
write(out: DataOutput): Unit
- Definition Classes
- Writable
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
final
def
compareStart(pos: Long): Int
Compares the span's start to a given position
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )