clojure.lang.PersistentTreeMap.RightBalance C# (CSharp) Метод

RightBalance() статический приватный Метод

static private RightBalance ( object key, object val, Node left, Node ins ) : Node
key object
val object
left Node
ins Node
Результат Node
        static Node RightBalance(object key, object val, Node left, Node ins)
        {
            if (ins is Red && ins.Right is Red)
                return MakeRed(ins.Key, ins.Val, MakeBlack(key, val, left, ins.Left), ins.Right.Blacken());
            else if (ins is Red && ins.Left is Red)
                return MakeRed(ins.Left.Key, ins.Left.Val,
                           MakeBlack(key, val, left, ins.Left.Left),
                           MakeBlack(ins.Key, ins.Val, ins.Left.Right, ins.Right));
            else
                return MakeBlack(key, val, left, ins);
        }