@@ -527,26 +527,30 @@ pub fn dump_cmark (libraries : Libraries, stream : &mut dyn io::Write) -> (Outco
527527 }
528528 }
529529
530- if category. has_definitions ( ) {
531- try_writeln ! ( stream) ;
532- try_writeln ! ( stream, "Complete list of definitions:" ) ;
533- for definition in category. definitions ( ) {
534- let definition_anchor = try! ( generate_anchor ( Some ( "definition" ) , Some ( library. identifier ( ) ) , Some ( definition. identifier ( ) ) ) ) ;
535- try_writeln ! ( stream, " * [`{}`](#{});" , definition. identifier ( ) , definition_anchor) ;
536- }
537- }
530+ try! ( write_description ( category. description ( ) , stream) ) ;
531+ try! ( write_links ( category. links ( ) , stream) ) ;
538532
539533 if category. has_value_kinds ( ) {
540534 try_writeln ! ( stream) ;
541- try_writeln ! ( stream, "Complete list of types:" ) ;
535+ try_writeln ! ( stream) ;
536+ try_writeln ! ( stream, "#### Types" ) ;
537+ try_writeln ! ( stream) ;
542538 for value_kind in category. value_kinds ( ) {
543539 let value_kind_anchor = try! ( generate_anchor ( Some ( "value_kind" ) , Some ( library. identifier ( ) ) , Some ( value_kind. identifier ( ) ) ) ) ;
544540 try_writeln ! ( stream, " * [`{}`](#{});" , value_kind. identifier ( ) , value_kind_anchor) ;
545541 }
546542 }
547543
548- try! ( write_description ( category. description ( ) , stream) ) ;
549- try! ( write_links ( category. links ( ) , stream) ) ;
544+ if category. has_definitions ( ) {
545+ try_writeln ! ( stream) ;
546+ try_writeln ! ( stream) ;
547+ try_writeln ! ( stream, "#### Definitions" ) ;
548+ try_writeln ! ( stream) ;
549+ for definition in category. definitions ( ) {
550+ let definition_anchor = try! ( generate_anchor ( Some ( "definition" ) , Some ( library. identifier ( ) ) , Some ( definition. identifier ( ) ) ) ) ;
551+ try_writeln ! ( stream, " * [`{}`](#{});" , definition. identifier ( ) , definition_anchor) ;
552+ }
553+ }
550554
551555 try_writeln ! ( stream) ;
552556 try_writeln ! ( stream, "Goto: [library](#{}), [categories](#{}), [types](#{}), [definitions](#{})." , & library_anchor, & categories_anchor, & value_kinds_anchor, & definitions_anchor) ;
@@ -646,18 +650,20 @@ pub fn dump_cmark (libraries : Libraries, stream : &mut dyn io::Write) -> (Outco
646650 }
647651 }
648652
653+ try! ( write_description ( value_kind. description ( ) , stream) ) ;
654+ try! ( write_links ( value_kind. links ( ) , stream) ) ;
655+
649656 if value_kind. has_definitions ( ) {
650657 try_writeln ! ( stream) ;
651- try_writeln ! ( stream, "Referenced by the following definitions:" ) ;
658+ try_writeln ! ( stream) ;
659+ try_writeln ! ( stream, "#### Referent definitions" ) ;
660+ try_writeln ! ( stream) ;
652661 for definition in value_kind. definitions ( ) {
653662 let definition_anchor = try! ( generate_anchor ( Some ( "definition" ) , Some ( library. identifier ( ) ) , Some ( definition. identifier ( ) ) ) ) ;
654663 try_writeln ! ( stream, " * [`{}`](#{});" , definition. identifier ( ) , definition_anchor) ;
655664 }
656665 }
657666
658- try! ( write_description ( value_kind. description ( ) , stream) ) ;
659- try! ( write_links ( value_kind. links ( ) , stream) ) ;
660-
661667 try_writeln ! ( stream) ;
662668 try_writeln ! ( stream, "Goto: [library](#{}), [categories](#{}), [types](#{}), [definitions](#{})." , & library_anchor, & categories_anchor, & value_kinds_anchor, & definitions_anchor) ;
663669 try_writeln ! ( stream) ;
@@ -721,15 +727,6 @@ pub fn dump_cmark (libraries : Libraries, stream : &mut dyn io::Write) -> (Outco
721727 }
722728 }
723729
724- if definition. has_referenced_value_kinds ( ) {
725- try_writeln ! ( stream) ;
726- try_writeln ! ( stream, "References the following types:" ) ;
727- for value_kind in definition. referenced_value_kinds ( ) {
728- let value_kind_anchor = try! ( generate_anchor ( Some ( "value_kind" ) , Some ( library. identifier ( ) ) , Some ( value_kind. identifier ( ) ) ) ) ;
729- try_writeln ! ( stream, " * [`{}`](#{});" , value_kind. identifier ( ) , value_kind_anchor) ;
730- }
731- }
732-
733730 try! ( write_description ( definition. description ( ) , stream) ) ;
734731 try! ( write_links ( definition. links ( ) , stream) ) ;
735732
@@ -817,6 +814,17 @@ pub fn dump_cmark (libraries : Libraries, stream : &mut dyn io::Write) -> (Outco
817814 }
818815 }
819816
817+ if definition. has_referenced_value_kinds ( ) {
818+ try_writeln ! ( stream) ;
819+ try_writeln ! ( stream) ;
820+ try_writeln ! ( stream, "#### Referenced types" ) ;
821+ try_writeln ! ( stream) ;
822+ for value_kind in definition. referenced_value_kinds ( ) {
823+ let value_kind_anchor = try! ( generate_anchor ( Some ( "value_kind" ) , Some ( library. identifier ( ) ) , Some ( value_kind. identifier ( ) ) ) ) ;
824+ try_writeln ! ( stream, " * [`{}`](#{});" , value_kind. identifier ( ) , value_kind_anchor) ;
825+ }
826+ }
827+
820828 try_writeln ! ( stream) ;
821829 try_writeln ! ( stream, "Goto: [library](#{}), [categories](#{}), [types](#{}), [definitions](#{})." , & library_anchor, & categories_anchor, & value_kinds_anchor, & definitions_anchor) ;
822830 try_writeln ! ( stream) ;
0 commit comments