UNPKG

xiot-core-spec-ts

Version:
37 lines (36 loc) 1.11 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const Argument_1 = require("../../typedef/instance/Argument"); const Spec_1 = require("../../typedef/constant/Spec"); class ArgumentOperationCodec { static decodeArray(list) { const array = []; if (list != null) { list.forEach(o => { const a = ArgumentOperationCodec.decode(o); if (a != null) { array.push(a); } }); } return array; } static decode(o) { if (typeof o === 'number') { return new Argument_1.Argument(o); } const argument = new Argument_1.Argument(o[Spec_1.Spec.PIID] || 0); argument.values = o[Spec_1.Spec.VALUES] || []; return argument; } static encode(argument) { return { piid: argument.piid, values: argument.values }; } static encodeArray(list) { return list.map(x => ArgumentOperationCodec.encode(x)); } } exports.ArgumentOperationCodec = ArgumentOperationCodec;