UNPKG

logoots-structs

Version:

Provides several data structures to represent a text using a ropes-like structure and manipulating it

29 lines (24 loc) 795 B
module.exports = { createBetweenPosition: function (id1, id2, replicaNumber, clock) { var s1 = new InfiniteString(Number.MIN_VALUE, id1 != null ? id1.iterator() : null); var s2 = new InfiniteString(Number.MAX_VALUE, id2 != null ? id2.iterator() : null); var sb = []; do { var b1 = s1.next(); var b2 = s2.next(); if (b2 - b1 > 2) { //if (replicaNumber <= b1 || replicaNumber >= b2) { var r = (Math.random() * (b2 - b1 - 2)) + b1 + 1; sb.push(r); //} break; } else { sb.push(b1); } } while(true); sb.push(replicaNumber); sb.push(clock); return sb; } };