@digitalasset/daml-ledger
Version:
DAML Ledger API Node.js bindings
30 lines • 1.23 kB
JavaScript
;
// Copyright (c) 2021 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved.
// SPDX-License-Identifier: Apache-2.0
Object.defineProperty(exports, "__esModule", { value: true });
exports.VariantCodec = void 0;
const value_pb_1 = require("../generated/com/daml/ledger/api/v1/value_pb");
const IdentifierCodec_1 = require("./IdentifierCodec");
const ValueCodec_1 = require("./ValueCodec");
exports.VariantCodec = {
deserialize(message) {
const object = {
constructor: message.getConstructor(),
value: ValueCodec_1.ValueCodec.deserialize(message.getValue())
};
if (message.hasVariantId()) {
object.variantId = IdentifierCodec_1.IdentifierCodec.deserialize(message.getVariantId());
}
return object;
},
serialize(object) {
const message = new value_pb_1.Variant();
message.setConstructor(object.constructor);
message.setValue(ValueCodec_1.ValueCodec.serialize(object.value));
if (object.variantId) {
message.setVariantId(IdentifierCodec_1.IdentifierCodec.serialize(object.variantId));
}
return message;
}
};
//# sourceMappingURL=VariantCodec.js.map