1201
}
1202
1203
>
function rightRotate(T: IntervalTree, y: IntervalNode): void {
intervalTree.ts
1204
>
const x = y.left;
1205
>
1206
>
y.delta -= x.delta;
1207
>
if (y.delta < Constants.MIN_SAFE_DELTA || y.delta > Constants.MAX_SAFE_DELTA) {
1208
T.requestNormalizeDelta = true;
1209
}
1211
>
y.end -= x.delta;
1212
>
1213
>
y.left = x.right;
1214
>
if (x.right !== SENTINEL) {
1215
x.right.parent = y;
1216
}
1218
>
if (y.parent === SENTINEL) {
1219
T.root = x;
1221
y.parent.right = x;
1222
} else {
1223
y.parent.left = x;
1224
}
1226
>
x.right = y;
1227
>
y.parent = x;
1228
>
1229
>
recomputeMaxEnd(y);
1230
>
recomputeMaxEnd(x);
1231
>
}
1232
//#endregion
1233