blob: 0aa2690e10ac717bc7749cdcba27abe8c2ebe5d4 [file] [log] [blame]
Peter Szilagyifbc56f92019-07-23 19:29:46 +00001/*
2 * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
3 * From ASN.1 module "X2AP-IEs"
4 * found in "Spec/e2ap-v031ex.asn"
5 * `asn1c -fcompound-names -fno-include-deps -findirect-choice -gen-PER`
6 */
7
8#include "BenefitMetric.h"
9
10int
11BenefitMetric_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
12 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
13 long value;
14
15 if(!sptr) {
16 ASN__CTFAIL(app_key, td, sptr,
17 "%s: value not given (%s:%d)",
18 td->name, __FILE__, __LINE__);
19 return -1;
20 }
21
22 value = *(const long *)sptr;
23
24 if((value >= -101 && value <= 100)) {
25 /* Constraint check succeeded */
26 return 0;
27 } else {
28 ASN__CTFAIL(app_key, td, sptr,
29 "%s: constraint failed (%s:%d)",
30 td->name, __FILE__, __LINE__);
31 return -1;
32 }
33}
34
35/*
36 * This type is implemented using NativeInteger,
37 * so here we adjust the DEF accordingly.
38 */
39static asn_oer_constraints_t asn_OER_type_BenefitMetric_constr_1 CC_NOTUSED = {
40 { 0, 0 },
41 -1};
42asn_per_constraints_t asn_PER_type_BenefitMetric_constr_1 CC_NOTUSED = {
43 { APC_CONSTRAINED | APC_EXTENSIBLE, 8, 8, -101, 100 } /* (-101..100,...) */,
44 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
45 0, 0 /* No PER value map */
46};
47static const ber_tlv_tag_t asn_DEF_BenefitMetric_tags_1[] = {
48 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
49};
50asn_TYPE_descriptor_t asn_DEF_BenefitMetric = {
51 "BenefitMetric",
52 "BenefitMetric",
53 &asn_OP_NativeInteger,
54 asn_DEF_BenefitMetric_tags_1,
55 sizeof(asn_DEF_BenefitMetric_tags_1)
56 /sizeof(asn_DEF_BenefitMetric_tags_1[0]), /* 1 */
57 asn_DEF_BenefitMetric_tags_1, /* Same as above */
58 sizeof(asn_DEF_BenefitMetric_tags_1)
59 /sizeof(asn_DEF_BenefitMetric_tags_1[0]), /* 1 */
60 { &asn_OER_type_BenefitMetric_constr_1, &asn_PER_type_BenefitMetric_constr_1, BenefitMetric_constraint },
61 0, 0, /* No members */
62 0 /* No specifics */
63};
64