Bug
1842773 - Part 3: Add {FixedLength,Resizable}ArrayBufferObject classes. r=sfink
Change ArrayBufferObject into an abstract base class for the two new
classes `FixedLengthArrayBufferObject` and `ResizableArrayBufferObject`.
We need different classes, because resizable ArrayBuffers have slightly different
semantics and also need another reserved slot. Adding another reserved slot to
`ArrayBufferObject` changes the allocation kind from `AllocKind::ARRAYBUFFER4`
to `AllocKind::ARRAYBUFFER8`, which seems unfortunate for the common case of
non-resizable ArrayBuffers.
Differential Revision: https://phabricator.services.mozilla.com/
D183319