X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Futils%2FCircularArray.ts;h=08a37220c1469e255873ab06482a3193b4c25d87;hb=e909d2a71e82122e970db9d6f262bd1415a3bb20;hp=6eaa7026733a442a2f8e26ed020faa1018e9af96;hpb=ef72d3f5c132271abe618ee676814994259529ce;p=e-mobility-charging-stations-simulator.git diff --git a/src/utils/CircularArray.ts b/src/utils/CircularArray.ts index 6eaa7026..08a37220 100644 --- a/src/utils/CircularArray.ts +++ b/src/utils/CircularArray.ts @@ -1,5 +1,10 @@ -export const DEFAULT_CIRCULAR_ARRAY_SIZE = 2000; +// Copyright Jerome Benoit. 2021. All Rights Reserved. +export const DEFAULT_CIRCULAR_ARRAY_SIZE = Number.MAX_SAFE_INTEGER; + +/** + * Array with a maximum length shifting items when full. + */ export class CircularArray extends Array { public size: number; @@ -25,18 +30,16 @@ export class CircularArray extends Array { if (length > this.size) { super.splice(this.size, items.length); } - return length; + return this.length; } public concat(...items: (T | ConcatArray)[]): CircularArray { - const concatenatedCircularArray = super.concat( - items as T[] - ) as CircularArray; + const concatenatedCircularArray = super.concat(items as T[]) as CircularArray; concatenatedCircularArray.size = this.size; if (concatenatedCircularArray.length > concatenatedCircularArray.size) { concatenatedCircularArray.splice( 0, - concatenatedCircularArray.length - this.size + concatenatedCircularArray.length - concatenatedCircularArray.size ); } return concatenatedCircularArray;