blob: c9f3138469b542c7515f3ec7f5c84e6afdf3ffac [file] [log] [blame]
Bi-Ruei, Chiubc6ef1f2017-10-20 22:38:01 +08001
2-- OK: Everything is fine
3
4-- iso.org.dod.internet.private.enterprise (1.3.6.1.4.1)
5-- .spelio.software.asn1c.test (9363.1.5.1)
6-- .155
7
8ModuleParameterizationMoreThanTwoLevel
Bi-Ruei, Chiu2387ff32017-10-24 13:46:11 +08009 { iso org(3) dod(6) internet(1) private(4) enterprise(1)
10 spelio(9363) software(1) asn1c(5) test(1) 155 }
Bi-Ruei, Chiubc6ef1f2017-10-20 22:38:01 +080011DEFINITIONS ::= BEGIN
12
13 id-TYPE1 PacketId ::= 1
14
15 PacketId ::= INTEGER (0..65535)
16
17 Color ::= ENUMERATED { red(0), green, blue }
18
19 Valid ::= ENUMERATED { crc-nok, crc-ok(1) }
20
21 PACKET ::= CLASS {
Bi-Ruei, Chiu2387ff32017-10-24 13:46:11 +080022 &id PacketId UNIQUE,
23 &color Color,
24 &Value,
25 &valid Valid
Bi-Ruei, Chiubc6ef1f2017-10-20 22:38:01 +080026 }
27 WITH SYNTAX {
28 ID &id
29 COLOR &color
30 TYPE &Value
31 VALID &valid
32 }
33
34 ClassItem PACKET ::= {
35 { ID id-TYPE1 COLOR blue TYPE OCTET STRING VALID crc-ok },
36 ...
37 }
38
39 Packet-List ::= UpperLayer-List { {ClassItem} }
40
41 UpperLayer-List {PACKET : Param} ::= LowerLayer-List { 1, max-items, {Param} }
42
43 LowerLayer-List {INTEGER : low, INTEGER : high, PACKET : Param} ::=
44 SEQUENCE (SIZE (low..high)) OF
45 SinglePacket {{Param}}
46
47 SinglePacket {PACKET : Param} ::=
48 Packet {{Param}}
49
50 Packet {PACKET : Param} ::= SEQUENCE {
51 id PACKET.&id ({Param}),
52 color PACKET.&color ({Param}{@id}),
53 value PACKET.&Value ({Param}{@id})
54 }
55
56 max-items INTEGER ::= 256
57
58END