/* COPYRIGHT Esri - https://js.arcgis.com/5.0.18/LICENSE.txt */
import"./has.js";import{nextTick as t}from"./nextTick.js";import{create as e}from"./libs/gl-matrix-2/factories/mat3f64.js";import{create as r}from"./libs/gl-matrix-2/factories/mat4f64.js";import{create as s}from"./libs/gl-matrix-2/factories/quatf64.js";import{create as i}from"./libs/gl-matrix-2/factories/vec2f64.js";import{create as a}from"./libs/gl-matrix-2/factories/vec3f64.js";import{create as c}from"./libs/gl-matrix-2/factories/vec4f64.js";class m{constructor(t){this._create=t,this._items=new Array,this._itemsPtr=0}get(){return 0===this._itemsPtr&&t(()=>this._reset()),this._itemsPtr>=this._items.length&&this._items.push(this._create()),this._items[this._itemsPtr++]}_reset(){const t=2*this._itemsPtr;this._items.length>t&&(this._items.length=t),this._itemsPtr=0}static createVec2f64(){return new m(i)}static createVec3f64(){return new m(a)}static createVec4f64(){return new m(c)}static createMat3f64(){return new m(e)}static createMat4f64(){return new m(r)}static createQuatf64(){return new m(s)}get test(){}}export{m as VectorStack};
