Skip to content
Snippets Groups Projects
Commit 73f66797 authored by Alexander Rose's avatar Alexander Rose
Browse files

OrderedSet improvements

parent d3f86b06
No related branches found
No related tags found
No related merge requests found
...@@ -23,11 +23,14 @@ namespace OrderedSet { ...@@ -23,11 +23,14 @@ namespace OrderedSet {
export const min: <T extends number = number>(set: OrderedSet<T>) => T = Base.min as any; export const min: <T extends number = number>(set: OrderedSet<T>) => T = Base.min as any;
export const max: <T extends number = number>(set: OrderedSet<T>) => T = Base.max as any; export const max: <T extends number = number>(set: OrderedSet<T>) => T = Base.max as any;
export const start: <T extends number = number>(set: OrderedSet<T>) => T = Base.start as any;
export const end: <T extends number = number>(set: OrderedSet<T>) => T = Base.end as any;
export const size: <T extends number = number>(set: OrderedSet<T>) => number = Base.size as any; export const size: <T extends number = number>(set: OrderedSet<T>) => number = Base.size as any;
export const hashCode: <T extends number = number>(set: OrderedSet<T>) => number = Base.hashCode as any; export const hashCode: <T extends number = number>(set: OrderedSet<T>) => number = Base.hashCode as any;
export const areEqual: <T extends number = number>(a: OrderedSet<T>, b: OrderedSet<T>) => boolean = Base.areEqual as any; export const areEqual: <T extends number = number>(a: OrderedSet<T>, b: OrderedSet<T>) => boolean = Base.areEqual as any;
export const areIntersecting: <T extends number = number>(a: OrderedSet<T>, b: OrderedSet<T>) => boolean = Base.areIntersecting as any; export const areIntersecting: <T extends number = number>(a: OrderedSet<T>, b: OrderedSet<T>) => boolean = Base.areIntersecting as any;
/** Check if the 2nd argument is a subset of the 1st */
export const isSubset: <T extends number = number>(a: OrderedSet<T>, b: OrderedSet<T>) => boolean = Base.isSubset as any; export const isSubset: <T extends number = number>(a: OrderedSet<T>, b: OrderedSet<T>) => boolean = Base.isSubset as any;
export const union: <T extends number = number>(a: OrderedSet<T>, b: OrderedSet<T>) => OrderedSet<T> = Base.union as any; export const union: <T extends number = number>(a: OrderedSet<T>, b: OrderedSet<T>) => OrderedSet<T> = Base.union as any;
...@@ -49,6 +52,12 @@ namespace OrderedSet { ...@@ -49,6 +52,12 @@ namespace OrderedSet {
export function isSortedArray<T extends number = number>(set: OrderedSet<T>): set is SortedArray<T> { export function isSortedArray<T extends number = number>(set: OrderedSet<T>): set is SortedArray<T> {
return !Interval.is(set); return !Interval.is(set);
} }
export function toArray<T extends number = number>(set: OrderedSet<T>): T[] {
const array: T[] = []
OrderedSet.forEach(set, v => array.push(v))
return array
}
} }
/** Represents bla */ /** Represents bla */
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment