Skip to content

meos.js


meos.js / IntSpanSet

Class: IntSpanSet

Defined in: core/types/collections/number/IntSpanSet.ts:30

An ordered set of disjoint IntSpan values.

Example

ts
const ss = IntSpanSet.fromString('{[1, 5), [8, 12)}');
console.log(ss.numSpans()); // 2
console.log(ss.lower());    // 1
console.log(ss.upper());    // 12
ss.free();

Extends

Constructors

Constructor

ts
new IntSpanSet(inner): IntSpanSet;

Defined in: core/types/collections/base/SpanSet.ts:63

Parameters

inner

number

Returns

IntSpanSet

Inherited from

SpanSet.constructor

Accessors

inner

Get Signature

ts
get inner(): number;

Defined in: core/types/collections/base/SpanSet.ts:77

Raw WASM heap pointer. Do not free this value directly; use free.

Returns

number

Inherited from

SpanSet.inner

Methods

[dispose]()

ts
dispose: void;

Defined in: core/types/collections/base/SpanSet.ts:87

Implements the using resource-management protocol — calls free automatically.

Returns

void

Inherited from

SpanSet.[dispose]


asHexWKB()

ts
asHexWKB(variant?): string;

Defined in: core/types/collections/base/SpanSet.ts:110

Serialises this span set to a hex-encoded WKB string.

Parameters

variant?

number = 4

WKB encoding variant (default 4 = Extended WKB).

Returns

string

Inherited from

SpanSet.asHexWKB


boundingSpan()

ts
boundingSpan(): IntSpan;

Defined in: core/types/collections/base/SpanSet.ts:154

Returns the smallest span that covers all spans in this set (the bounding span). The caller is responsible for calling Span.free on the result.

Returns

IntSpan

Inherited from

SpanSet.boundingSpan


contains()

ts
contains(other): boolean;

Defined in: core/types/collections/base/SpanSet.ts:209

true if this entirely contains other. Accepts either a companion span or another span set of the same type.

Parameters

other

IntSpan | IntSpanSet

Returns

boolean

Inherited from

SpanSet.contains


copy()

ts
copy(): this;

Defined in: core/types/collections/base/SpanSet.ts:95

Returns a deep copy of this span set. The caller is responsible for calling free on the returned copy.

Returns

this

Inherited from

SpanSet.copy


distance()

ts
distance(other): number;

Defined in: core/types/collections/number/IntSpanSet.ts:108

Returns the distance (gap) between this and other in integers. Returns 0 if they overlap. Accepts either an IntSpan or an IntSpanSet.

Parameters

other

IntSpan | IntSpanSet

Returns

number

Overrides

SpanSet.distance


endSpan()

ts
endSpan(): IntSpan;

Defined in: core/types/collections/base/SpanSet.ts:170

Returns the last (rightmost) span in this set. The caller is responsible for calling Span.free on the result.

Returns

IntSpan

Inherited from

SpanSet.endSpan


eq()

ts
eq(other): boolean;

Defined in: core/types/collections/base/SpanSet.ts:324

true if this and other are identical (same spans, bounds, and inclusivity).

Parameters

other

this

Returns

boolean

Inherited from

SpanSet.eq


free()

ts
free(): void;

Defined in: core/types/collections/base/SpanSet.ts:82

Releases the WASM-allocated memory. Must be called when the object is no longer needed.

Returns

void

Inherited from

SpanSet.free


ge()

ts
ge(other): boolean;

Defined in: core/types/collections/base/SpanSet.ts:349

true if this is greater than or equal to other in MEOS total ordering.

Parameters

other

this

Returns

boolean

Inherited from

SpanSet.ge


gt()

ts
gt(other): boolean;

Defined in: core/types/collections/base/SpanSet.ts:344

true if this is strictly greater than other in MEOS total ordering.

Parameters

other

this

Returns

boolean

Inherited from

SpanSet.gt


hash()

ts
hash(): number;

Defined in: core/types/collections/base/SpanSet.ts:146

32-bit integer hash of this span set.

Returns

number

Inherited from

SpanSet.hash


intersection()

ts
intersection(other): IntSpanSet | null;

Defined in: core/types/collections/base/SpanSet.ts:285

Returns the intersection of this and other, or null if they are disjoint. Accepts either a companion span or another span set of the same type. The caller is responsible for calling free on the result.

Parameters

other

IntSpan | IntSpanSet

Returns

IntSpanSet | null

Inherited from

SpanSet.intersection


isAdjacent()

ts
isAdjacent(other): boolean;

Defined in: core/types/collections/base/SpanSet.ts:191

true if this and other share exactly one boundary point without overlapping. Accepts either a companion span or another span set of the same type.

Parameters

other

IntSpan | IntSpanSet

Returns

boolean

Inherited from

SpanSet.isAdjacent


isAfter()

ts
isAfter(other): boolean;

Defined in: core/types/collections/base/SpanSet.ts:250

true if every point in this is strictly greater than every point in other. Accepts either a companion span or another span set of the same type.

Parameters

other

IntSpan | IntSpanSet

Returns

boolean

Inherited from

SpanSet.isAfter


isBefore()

ts
isBefore(other): boolean;

Defined in: core/types/collections/base/SpanSet.ts:231

true if every point in this is strictly less than every point in other. Accepts either a companion span or another span set of the same type.

Parameters

other

IntSpan | IntSpanSet

Returns

boolean

Inherited from

SpanSet.isBefore


isContainedIn()

ts
isContainedIn(other): boolean;

Defined in: core/types/collections/base/SpanSet.ts:200

true if this is entirely contained within other. Accepts either a companion span or another span set of the same type.

Parameters

other

IntSpan | IntSpanSet

Returns

boolean

Inherited from

SpanSet.isContainedIn


isOverOrAfter()

ts
isOverOrAfter(other): boolean;

Defined in: core/types/collections/base/SpanSet.ts:260

true if this does not extend to the left of other (i.e. min(this) ≥ min(other)). Accepts either a companion span or another span set of the same type.

Parameters

other

IntSpan | IntSpanSet

Returns

boolean

Inherited from

SpanSet.isOverOrAfter


isOverOrBefore()

ts
isOverOrBefore(other): boolean;

Defined in: core/types/collections/base/SpanSet.ts:241

true if this does not extend to the right of other (i.e. max(this) ≤ max(other)). Accepts either a companion span or another span set of the same type.

Parameters

other

IntSpan | IntSpanSet

Returns

boolean

Inherited from

SpanSet.isOverOrBefore


le()

ts
le(other): boolean;

Defined in: core/types/collections/base/SpanSet.ts:339

true if this is less than or equal to other in MEOS total ordering.

Parameters

other

this

Returns

boolean

Inherited from

SpanSet.le


lower()

ts
lower(): number;

Defined in: core/types/collections/number/IntSpanSet.ts:81

Returns the inclusive lower bound of the first span.

Returns

number

Overrides

SpanSet.lower


lowerInc()

ts
lowerInc(): boolean;

Defined in: core/types/collections/base/SpanSet.ts:131

true if the lower bound of the first span is inclusive ([).

Returns

boolean

Inherited from

SpanSet.lowerInc


lt()

ts
lt(other): boolean;

Defined in: core/types/collections/base/SpanSet.ts:334

true if this is strictly less than other in MEOS total ordering.

Parameters

other

this

Returns

boolean

Inherited from

SpanSet.lt


minus()

ts
minus(other): IntSpanSet | null;

Defined in: core/types/collections/base/SpanSet.ts:298

Returns the part of this that is not in other, or null if the result is empty. Accepts either a companion span or another span set of the same type. The caller is responsible for calling free on the result.

Parameters

other

IntSpan | IntSpanSet

Returns

IntSpanSet | null

Inherited from

SpanSet.minus


ne()

ts
ne(other): boolean;

Defined in: core/types/collections/base/SpanSet.ts:329

true if this and other differ in at least one span.

Parameters

other

this

Returns

boolean

Inherited from

SpanSet.ne


numSpans()

ts
numSpans(): number;

Defined in: core/types/collections/base/SpanSet.ts:141

Number of spans in this set.

Returns

number

Inherited from

SpanSet.numSpans


overlaps()

ts
overlaps(other): boolean;

Defined in: core/types/collections/base/SpanSet.ts:218

true if this and other share at least one point. Accepts either a companion span or another span set of the same type.

Parameters

other

IntSpan | IntSpanSet

Returns

boolean

Inherited from

SpanSet.overlaps


shiftScale()

ts
shiftScale(
   shift, 
   width, 
   hasShift?, 
   hasWidth?): IntSpanSet;

Defined in: core/types/collections/number/IntSpanSet.ts:133

Returns a new span set shifted and/or scaled along the integer axis.

Parameters

shift

number

Amount to add to every bound (ignored when hasShift is false).

width

number

New total width (ignored when hasWidth is false).

hasShift?

boolean = true

Set to false to skip shifting (default true).

hasWidth?

boolean = true

Set to false to skip scaling (default true).

Returns

IntSpanSet


spanN()

ts
spanN(n): IntSpan;

Defined in: core/types/collections/base/SpanSet.ts:179

Returns the n-th span (0-based index). The caller is responsible for calling Span.free on the result.

Parameters

n

number

0-based index (MEOS internally uses 1-based indexing).

Returns

IntSpan

Inherited from

SpanSet.spanN


startSpan()

ts
startSpan(): IntSpan;

Defined in: core/types/collections/base/SpanSet.ts:162

Returns the first (leftmost) span in this set. The caller is responsible for calling Span.free on the result.

Returns

IntSpan

Inherited from

SpanSet.startSpan


toFloatSpanSet()

ts
toFloatSpanSet(): number;

Defined in: core/types/collections/number/IntSpanSet.ts:122

Converts this set to a FloatSpanSet and returns the raw WASM pointer. Use new FloatSpanSet(ptr) to obtain a typed object.

Returns

number


toString()

ts
toString(): string;

Defined in: core/types/collections/number/IntSpanSet.ts:72

Returns the WKT string representation (e.g. {[1, 5), [8, 12)}).

Returns

string

Overrides

SpanSet.toString


union()

ts
union(other): this;

Defined in: core/types/collections/base/SpanSet.ts:311

Returns the union of this and other. Accepts either a companion span or another span set of the same type. The caller is responsible for calling free on the result.

Parameters

other

IntSpan | IntSpanSet

Returns

this

Inherited from

SpanSet.union


upper()

ts
upper(): number;

Defined in: core/types/collections/number/IntSpanSet.ts:86

Returns the exclusive upper bound of the last span (stored half-open).

Returns

number

Overrides

SpanSet.upper


upperInc()

ts
upperInc(): boolean;

Defined in: core/types/collections/base/SpanSet.ts:136

true if the upper bound of the last span is inclusive (]).

Returns

boolean

Inherited from

SpanSet.upperInc


width()

ts
width(boundSpan?): number;

Defined in: core/types/collections/number/IntSpanSet.ts:96

Returns the total width of this span set.

Parameters

boundSpan?

boolean = false

false (default): sum of all individual span widths.

  • true: width of the bounding span (from first lower to last upper).

Returns

number


fromHexWKB()

ts
static fromHexWKB(hexwkb): IntSpanSet;

Defined in: core/types/collections/number/IntSpanSet.ts:55

Deserialises an IntSpanSet from a hex-encoded WKB string produced by asHexWKB.

Parameters

hexwkb

string

Hex-encoded WKB string.

Returns

IntSpanSet


fromSpan()

ts
static fromSpan(span): IntSpanSet;

Defined in: core/types/collections/number/IntSpanSet.ts:63

Wraps a single IntSpan into a one-element IntSpanSet.

Parameters

span

IntSpan

The span to wrap.

Returns

IntSpanSet


fromString()

ts
static fromString(str): IntSpanSet;

Defined in: core/types/collections/number/IntSpanSet.ts:47

Parses an IntSpanSet from its WKT string representation.

Parameters

str

string

WKT string, e.g. "{[1, 5), [8, 12)}".

Returns

IntSpanSet