{"version":3,"sources":["https://lively-kernel.org/lively4/swd21-croquet/demos/lively-simulation/FixedSizeBufferQueue.js"],"names":["FixedSizeBufferQueue","length","initialValue","Error","fixedSizeQueue","Array","fill","insertCount","push","shift","prototype","apply","arguments"],"mappings":";;;;;;;;AAAA,kBAAMA,uBAAuB,CAACC,MAAD,EAASC,YAAT,KAA0B;AACnD,oBAAID,UAAU,CAAd,EAAiB,MAAM,IAAIE,KAAJ,CAAU,6BAAV,CAAN;AACjB,sBAAMC,iBAAiB,IAAIC,KAAJ,CAAUJ,MAAV,EAAkBK,IAAlB,CAAuBJ,YAAvB,CAAvB;AACA,oBAAIK,cAAc,CAAlB;AACAH,+BAAeI,IAAf,GAAsB,YAAY;AAC9BD,mCAAgBA,cAAcN,MAA9B;AACA,yBAAKQ,KAAL;AACA,2BAAOJ,MAAMK,SAAN,CAAgBF,IAAhB,CAAqBG,KAArB,CAA2B,IAA3B,EAAiCC,SAAjC,CAAP;AACH,iBAJD;AAKA,uBAAOR,cAAP;AACH,aAVD;;;;;;;;AAAMJ,yE;;;;;;;;+BAYSA,oB","file":"FixedSizeBufferQueue.js","sourcesContent":["const FixedSizeBufferQueue = (length, initialValue) => {\n    if (length <= 0) throw new Error('Length must be greater zero');\n    const fixedSizeQueue = new Array(length).fill(initialValue);\n    let insertCount = 0;\n    fixedSizeQueue.push = function () {\n        insertCount += (insertCount < length);\n        this.shift();\n        return Array.prototype.push.apply(this, arguments);\n    };\n    return fixedSizeQueue;\n};\n\nexport default FixedSizeBufferQueue;"]}