// Copyright 2018-2022 the Deno authors. All rights reserved. MIT license. /** This module is browser compatible. */ import { BSNode, direction } from "./bs_node.ts"; export type { direction }; export class RBNode extends BSNode { declare parent: RBNode | null; declare left: RBNode | null; declare right: RBNode | null; red: boolean; constructor(parent: RBNode | null, value: T) { super(parent, value); this.red = true; } static override from(node: RBNode): RBNode { const copy: RBNode = new RBNode(node.parent, node.value); copy.left = node.left; copy.right = node.right; copy.red = node.red; return copy; } }