Add UhkArray. Don't dump arrays.
This commit is contained in:
@@ -8,11 +8,14 @@ abstract class Serializable<T> {
|
||||
|
||||
fromJsObject(jsObject: any): T {
|
||||
let identation = new Array(Serializable.depth + 1).join(' ');
|
||||
process.stdout.write(`${identation}* ${this.constructor.name}.fromJsObject(${JSON.stringify(jsObject)}) => `);
|
||||
let isArray = this instanceof UhkArray;
|
||||
process.stdout.write(`${identation}* ${this.constructor.name}.fromJsObject(${JSON.stringify(jsObject)}) ` + (isArray ? ':\n' : `=> `));
|
||||
Serializable.depth++;
|
||||
let value = this._fromJsObject(jsObject);
|
||||
Serializable.depth--;
|
||||
process.stdout.write(`${value.toString()}\n`);
|
||||
if (!isArray) {
|
||||
process.stdout.write(`${value.toString()}\n`);
|
||||
}
|
||||
return value;
|
||||
}
|
||||
|
||||
|
||||
6
config-serializer/UhkArray.ts
Normal file
6
config-serializer/UhkArray.ts
Normal file
@@ -0,0 +1,6 @@
|
||||
abstract class UhkArray<T> extends Serializable<T> {
|
||||
abstract _fromJsObject(jsObject: any): T;
|
||||
abstract _fromBinary(buffer: UhkBuffer): T;
|
||||
abstract _toJsObject(): any;
|
||||
abstract _toBinary(buffer: UhkBuffer): void;
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
class KeyActions extends Serializable<KeyActions> {
|
||||
class KeyActions extends UhkArray<KeyActions> {
|
||||
|
||||
keyActions: Serializable<KeyAction>[] = [];
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
/// <reference path="assert.ts" />
|
||||
/// <reference path="TypeChecker.ts" />
|
||||
/// <reference path="Serializable.ts" />
|
||||
/// <reference path="UhkArray.ts" />
|
||||
/// <reference path="UhkBuffer.ts" />
|
||||
/// <reference path="config-items/config-items.ts" />
|
||||
|
||||
|
||||
Reference in New Issue
Block a user