MCPcopy Create free account
hub / github.com/chronoxor/FastBinaryEncoding / deserialize

Method deserialize

projects/JavaScript/proto/enums.js:5432–5445  ·  view source on GitHub ↗

* Deserialize the struct value * @this {!EnumsModel} * @param {!Enums} value Enums value, defaults is new Enums() * @return {!object} Deserialized Enums value and its size

(value = new Enums())

Source from the content-addressed store, hash-verified

5430 * @return {!object} Deserialized Enums value and its size
5431 */
5432 deserialize (value = new Enums()) {
5433 if ((this.buffer.offset + this.model.fbeOffset - 4) > this.buffer.size) {
5434 return { value: new Enums(), size: 0 }
5435 }
5436
5437 let fbeFullSize = this.readUInt32(this.model.fbeOffset - 4)
5438 console.assert((fbeFullSize >= this.model.fbeSize), 'Model is broken!')
5439 if (fbeFullSize < this.model.fbeSize) {
5440 return { value: new Enums(), size: 0 }
5441 }
5442
5443 this.model.get(value)
5444 return { value: value, size: fbeFullSize }
5445 }
5446
5447 /**
5448 * Move to the next struct value

Calls 2

readUInt32Method · 0.45
getMethod · 0.45

Tested by

no test coverage detected