@wildboar/copp
Version:
Connection-oriented presentation protocol (COPP) data structures and business logic in TypeScript
66 lines • 3.72 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports._encode_User_data = exports._decode_User_data = exports._encode_Fully_encoded_data = exports._decode_Fully_encoded_data = exports._encode_Simply_encoded_data = exports._decode_Simply_encoded_data = void 0;
/* eslint-disable */
const asn1_ts_1 = require("asn1-ts");
const $ = require("asn1-ts/dist/node/functional");
const Simply_encoded_data_ta_1 = require("../ISO8823-PRESENTATION/Simply-encoded-data.ta");
var Simply_encoded_data_ta_2 = require("../ISO8823-PRESENTATION/Simply-encoded-data.ta");
Object.defineProperty(exports, "_decode_Simply_encoded_data", { enumerable: true, get: function () { return Simply_encoded_data_ta_2._decode_Simply_encoded_data; } });
Object.defineProperty(exports, "_encode_Simply_encoded_data", { enumerable: true, get: function () { return Simply_encoded_data_ta_2._encode_Simply_encoded_data; } });
const Fully_encoded_data_ta_1 = require("../ISO8823-PRESENTATION/Fully-encoded-data.ta");
var Fully_encoded_data_ta_2 = require("../ISO8823-PRESENTATION/Fully-encoded-data.ta");
Object.defineProperty(exports, "_decode_Fully_encoded_data", { enumerable: true, get: function () { return Fully_encoded_data_ta_2._decode_Fully_encoded_data; } });
Object.defineProperty(exports, "_encode_Fully_encoded_data", { enumerable: true, get: function () { return Fully_encoded_data_ta_2._encode_Fully_encoded_data; } });
/* END_OF_SYMBOL_DEFINITION User_data */
/* START_OF_SYMBOL_DEFINITION _cached_decoder_for_User_data */
let _cached_decoder_for_User_data = null;
/* END_OF_SYMBOL_DEFINITION _cached_decoder_for_User_data */
/* START_OF_SYMBOL_DEFINITION _decode_User_data */
/**
* @summary Decodes an ASN.1 element into a(n) User_data
* @function
* @param {_Element} el The element being decoded.
* @returns {User_data} The decoded data structure.
*/
function _decode_User_data(el) {
if (!_cached_decoder_for_User_data) {
_cached_decoder_for_User_data = $._decode_extensible_choice({
'APPLICATION 0': [
'simply_encoded_data',
$._decode_implicit(() => Simply_encoded_data_ta_1._decode_Simply_encoded_data),
],
'APPLICATION 1': [
'fully_encoded_data',
$._decode_implicit(() => Fully_encoded_data_ta_1._decode_Fully_encoded_data),
],
});
}
return _cached_decoder_for_User_data(el);
}
exports._decode_User_data = _decode_User_data;
/* END_OF_SYMBOL_DEFINITION _decode_User_data */
/* START_OF_SYMBOL_DEFINITION _cached_encoder_for_User_data */
let _cached_encoder_for_User_data = null;
/* END_OF_SYMBOL_DEFINITION _cached_encoder_for_User_data */
/* START_OF_SYMBOL_DEFINITION _encode_User_data */
/**
* @summary Encodes a(n) User_data into an ASN.1 Element.
* @function
* @param {value} el The element being decoded.
* @param elGetter A function that can be used to get new ASN.1 elements.
* @returns {_Element} The User_data, encoded as an ASN.1 Element.
*/
function _encode_User_data(value, elGetter) {
if (!_cached_encoder_for_User_data) {
_cached_encoder_for_User_data = $._encode_choice({
simply_encoded_data: $._encode_implicit(asn1_ts_1.ASN1TagClass.application, 0, () => Simply_encoded_data_ta_1._encode_Simply_encoded_data, $.BER),
fully_encoded_data: $._encode_implicit(asn1_ts_1.ASN1TagClass.application, 1, () => Fully_encoded_data_ta_1._encode_Fully_encoded_data, $.BER),
}, $.BER);
}
return _cached_encoder_for_User_data(value, elGetter);
}
exports._encode_User_data = _encode_User_data;
/* END_OF_SYMBOL_DEFINITION _encode_User_data */
/* eslint-enable */
//# sourceMappingURL=User-data.ta.js.map