9 wide_separator = wide_separator
"-" ;
12 ie_separator =
"-- " ;
13 for (i=
0;i
<=
137;i
++) {
14 ie_separator = ie_separator
"=" ;
19 # This will also catch bits of Short Message description but that won't cause issues
20 # A way not to catch those could be to check that the numbers are in sequence
22 /^
[0-9]+(\.
[0-9]+)*\t/ {
43 # Recording empty line (to avoid multiple empty lines)
44 # Printing separators in some cases
48 if (next_line ==
"condition") {
51 if ((next_line ==
"field description") || (next_line ==
"field name")){
56 # #if (empty_line == "yes") {
65 # Stopping before ASN.1 examples (end of specification)
66 /^
-[[:space
:]]+ParentIE
-WithEM$
/ {
70 # Start of IE definitions
71 # This cannot catch "Multiplicity and type constraints"
72 # This also cannot catch NR-InterNodeDefinitions
73 /^
-[[:space
:]]+[A
-Za
-z0
-9-]+$
/ {
74 if (empty_line ==
"yes") {
85 /^
NR-InterNodeDefinitions
/ {
86 if (empty_line ==
"yes") {
88 print "-- IE: NR-InterNodeDefinitions";
90 # Perhaps it could work without this if the "next" at the end is removed
100 # Sometimes there is an "s" to constraint, sometimes not
101 /^
-[[:space
:]]+Multiplicity and type constraints? definitions$
/ {
102 if (empty_line ==
"yes") {
104 print "-- Multiplicity and type constraints definitions";
113 #/^-[[:space:]]+Multiplicity and type constraints definitions/ {
118 /^Conditional Presence
/ {
122 $0 =
"Conditional presence" ;
123 for(i=
0;i
<=
140;i
++) {
124 separator = separator
"-" ;
127 #add_line_after = separator ;
128 next_line =
"condition" ;
131 # Need to catch "x and y field descriptions"
133 /field descriptions$
/ {
137 for(i=
0;i
<=
140;i
++) {
138 separator = separator
"-" ;
141 # add_line_after = separator ;
142 next_line =
"field name" ;
145 #/^[A-Za-z0-9-]+[[:space:]]+[A-Za-z0-9-]+/ {
146 # if (next_line == "field description") {
147 # add_line_after = separator ;
148 # next_line = "field name";
152 /^
[A
-Za
-z0
-9-]+(, [A
-Za
-z0
-9-]+)*$
/ {
153 if (next_line ==
"field name") {
158 #add_line_after = " ";
159 next_line =
"field description";
161 else if (next_line ==
"field description") {
165 #add_line_after = separator ;
166 #print "separator est " separator;
167 next_line =
"field name";
174 if (in_IE ==
"yes") {
175 if ((next_line ==
"condition") && ($1 != "Conditional")) {
177 if (index(conditions
, $1) != 0) {
179 print "-- Condition: " $1;
182 if ((in_ASN1 ==
"no") && !
(/^\s
*$
/)) {
189 if ((in_ASN1 ==
"no") && !
(/^\s
*$
/)) {
195 if (add_line_after
!= "") {
196 print add_line_after
;
197 add_line_after =
"" ;
200 if (/-- Cond
[A
-Za
-z0
-9-]+$
/) {
201 conditions = conditions
" " $NF ;