9820b30146356bf35173799b198a1c001d8c90c1
[com/asn1c.git] / tests / tests-asn1c-compiler / 141-component-relation-OK.asn1.-EFprint-class-matrix
1 ModuleComponentRelationConstraint { iso org(3) dod(6) internet(1) private(4)
2         enterprise(1) spelio(9363) software(1) asn1c(5) test(1) 141 }
3 DEFINITIONS AUTOMATIC TAGS ::=
4 BEGIN
5
6 Frame ::= SEQUENCE {
7     ident        [0] IMPLICIT FRAME-STRUCTURE.&id ({FrameTypes}),
8     value        [1] EXPLICIT FRAME-STRUCTURE.&Type ({FrameTypes}{@.ident}),
9     ...
10 }
11
12 FRAME-STRUCTURE ::= CLASS {
13     &id  ConstrainedInteger UNIQUE,
14     &Type        ANY
15 } WITH SYNTAX {&Type IDENTIFIED BY &id}
16
17 -- Information Object Set has 2 entries:
18 --    [             &id][           &Type]
19 -- [1]      primMessage  PrimitiveMessage 
20 -- [2]      cplxMessage    ComplexMessage 
21
22
23 ConstrainedInteger ::= INTEGER (0..32767)
24
25 FrameTypes FRAME-STRUCTURE ::= {{ PrimitiveMessage IDENTIFIED BY primMessage } | { ComplexMessage IDENTIFIED BY cplxMessage },...}
26 -- Information Object Set has 2 entries:
27 --    [             &id][           &Type]
28 -- [1]      primMessage  PrimitiveMessage 
29 -- [2]      cplxMessage    ComplexMessage 
30 -- [ ] ...
31
32
33 PrimitiveMessage ::= SEQUENCE { }
34
35 ComplexMessage ::= SEQUENCE { }
36
37 primMessage INTEGER ::= 1
38
39 cplxMessage INTEGER ::= 2
40
41 END