import { _A, SortedSetSym } from "@tsplus/stdlib/collections/SortedSet/definition"
export class SortedSetInternal implements SortedSet {
readonly [SortedSetSym]: SortedSetSym = SortedSetSym
readonly [_A]!: () => A
constructor(readonly keyTree: RedBlackTree) {}
[Hash.sym](): number {
return this.keyTree[Hash.sym]()
}
[Equals.sym](that: unknown): boolean {
return this.keyTree[Equals.sym](that)
}
[Symbol.iterator](): Iterator {
return this.keyTree.keys()
}
}
/**
* @tsplus macro remove
*/
export function concreteSortedSet(_: SortedSet): asserts _ is SortedSetInternal {
//
}