print object sets tables for all information object sets

This commit is contained in:
Lev Walkin 2017-08-07 18:13:04 -07:00
parent 02da2aab89
commit d0f7b91eac
5 changed files with 55 additions and 9 deletions

View File

@ -774,14 +774,15 @@ asn1print_expr(asn1p_t *asn, asn1p_module_t *mod, asn1p_expr_t *tc, enum asn1pri
safe_printf("\n");
}
if(flags & APF_PRINT_CLASS_MATRIX
&& tc->expr_type == A1TC_CLASSDEF) do {
if(flags & APF_PRINT_CLASS_MATRIX) do {
size_t col, maxidlen;
if(tc->object_class_matrix.rows == 0) {
safe_printf("\n-- Class matrix is empty");
if(tc->expr_type == A1TC_CLASSDEF) {
safe_printf("\n-- Information Object Class table is empty");
}
break;
}
safe_printf("\n-- Class matrix has %d entr%s:\n",
safe_printf("\n-- Information Object Set has %d entr%s:\n",
tc->object_class_matrix.rows,
tc->object_class_matrix.rows==1 ? "y" : "ies");
maxidlen = tc->object_class_matrix.max_identifier_length;

View File

@ -14,13 +14,18 @@ FRAME-STRUCTURE ::= CLASS {
&Type ANY
} WITH SYNTAX {&Type IDENTIFIED BY &id}
-- Class matrix has 2 entries:
-- Information Object Set has 2 entries:
-- [ &id][ &Type]
-- [1] basicMessage PrimitiveMessage
-- [2] 2 ComplexMessage
FrameTypes FRAME-STRUCTURE ::= {{ PrimitiveMessage IDENTIFIED BY basicMessage } | { ComplexMessage IDENTIFIED BY 2 },...}
-- Information Object Set has 2 entries:
-- [ &id][ &Type]
-- [1] basicMessage PrimitiveMessage
-- [2] 2 ComplexMessage
PrimitiveMessage ::= SEQUENCE { }

View File

@ -14,17 +14,30 @@ FRAME-STRUCTURE ::= CLASS {
&Type ANY
} WITH SYNTAX {&Type IDENTIFIED BY &id}
-- Class matrix has 2 entries:
-- Information Object Set has 2 entries:
-- [ &id][ &Type]
-- [1] basicMessage PrimitiveMessage
-- [2] 2 ComplexMessage
FrameTypes FRAME-STRUCTURE ::= {{ PrimitiveMessage IDENTIFIED BY basicMessage } | { ComplexMessage IDENTIFIED BY 2 },...}
-- Information Object Set has 2 entries:
-- [ &id][ &Type]
-- [1] basicMessage PrimitiveMessage
-- [2] 2 ComplexMessage
primType FRAME-STRUCTURE ::= { PrimitiveMessage IDENTIFIED BY basicMessage }
-- Information Object Set has 1 entry:
-- [ &id][ &Type]
-- [1] basicMessage PrimitiveMessage
complexType FRAME-STRUCTURE ::= { ComplexMessage IDENTIFIED BY 2 }
-- Information Object Set has 1 entry:
-- [ &id][ &Type]
-- [1] 2 ComplexMessage
PrimitiveMessage ::= SEQUENCE { }

View File

@ -11,7 +11,7 @@ EXTENSION ::= CLASS {
IDENTIFIED BY &id
}
-- Class matrix is empty
-- Information Object Class table is empty
Ext1 ::= SEQUENCE {
extnId EXTENSION.&id
@ -22,12 +22,16 @@ EXTENSION-ATTRIBUTE ::= CLASS {
&Type ANY
} WITH SYNTAX {&Type IDENTIFIED BY &id}
-- Class matrix has 1 entry:
-- Information Object Set has 1 entry:
-- [ &id][ &Type]
-- [1] 23 TerminalType
terminal-type EXTENSION-ATTRIBUTE ::= {TerminalType IDENTIFIED BY 23}
-- Information Object Set has 1 entry:
-- [ &id][ &Type]
-- [1] 23 TerminalType
TerminalType ::= INTEGER {
terminal(0)

View File

@ -13,7 +13,7 @@ SAMPLE-CLASS ::= CLASS {
&Type OPTIONAL
} WITH SYNTAX { [TYPE &Type] [WITH CODE &code] IDENTIFIED BY &id }
-- Class matrix has 4 entries:
-- Information Object Set has 4 entries:
-- [ &id][ &code][ &Type]
-- [1] request-whatever <no entry> <no entry>
-- [2] response-stuff 1 <no entry>
@ -22,14 +22,37 @@ SAMPLE-CLASS ::= CLASS {
SampleClassObjectSet SAMPLE-CLASS ::= {{ IDENTIFIED BY request-whatever } | { WITH CODE 1 IDENTIFIED BY response-stuff } | { TYPE SampleType WITH CODE 2 IDENTIFIED BY request-id } | { TYPE Salt IDENTIFIED BY request-salt }}
-- Information Object Set has 4 entries:
-- [ &id][ &code][ &Type]
-- [1] request-whatever <no entry> <no entry>
-- [2] response-stuff 1 <no entry>
-- [3] request-id 2 SampleType
-- [4] request-salt <no entry> Salt
request-Whatever SAMPLE-CLASS ::= { IDENTIFIED BY request-whatever }
-- Information Object Set has 1 entry:
-- [ &id][ &code][ &Type]
-- [1] request-whatever <no entry> <no entry>
respond-Stuff SAMPLE-CLASS ::= { WITH CODE 1 IDENTIFIED BY response-stuff }
-- Information Object Set has 1 entry:
-- [ &id][ &code][ &Type]
-- [1] response-stuff 1 <no entry>
request-Status SAMPLE-CLASS ::= { TYPE SampleType WITH CODE 2 IDENTIFIED BY request-id }
-- Information Object Set has 1 entry:
-- [ &id][ &code][ &Type]
-- [1] request-id 2 SampleType
request-Salt SAMPLE-CLASS ::= { TYPE Salt IDENTIFIED BY request-salt }
-- Information Object Set has 1 entry:
-- [ &id][ &code][ &Type]
-- [1] request-salt <no entry> Salt
request-id RELATIVE-OID ::= { 1 1 1 }