@@ -540,19 +540,21 @@ impl Context {
540
540
541
541
fn shortty ( item : & clean:: Item ) -> & ' static str {
542
542
match item. inner {
543
- clean:: ModuleItem ( * ) => "mod" ,
544
- clean:: StructItem ( * ) => "struct" ,
545
- clean:: EnumItem ( * ) => "enum" ,
546
- clean:: FunctionItem ( * ) => "fn" ,
547
- clean:: TypedefItem ( * ) => "typedef" ,
548
- clean:: StaticItem ( * ) => "static" ,
549
- clean:: TraitItem ( * ) => "trait" ,
550
- clean:: ImplItem ( * ) => "impl" ,
551
- clean:: ViewItemItem ( * ) => "viewitem" ,
552
- clean:: TyMethodItem ( * ) => "tymethod" ,
553
- clean:: MethodItem ( * ) => "method" ,
554
- clean:: StructFieldItem ( * ) => "structfield" ,
555
- clean:: VariantItem ( * ) => "variant" ,
543
+ clean:: ModuleItem ( * ) => "mod" ,
544
+ clean:: StructItem ( * ) => "struct" ,
545
+ clean:: EnumItem ( * ) => "enum" ,
546
+ clean:: FunctionItem ( * ) => "fn" ,
547
+ clean:: TypedefItem ( * ) => "typedef" ,
548
+ clean:: StaticItem ( * ) => "static" ,
549
+ clean:: TraitItem ( * ) => "trait" ,
550
+ clean:: ImplItem ( * ) => "impl" ,
551
+ clean:: ViewItemItem ( * ) => "viewitem" ,
552
+ clean:: TyMethodItem ( * ) => "tymethod" ,
553
+ clean:: MethodItem ( * ) => "method" ,
554
+ clean:: StructFieldItem ( * ) => "structfield" ,
555
+ clean:: VariantItem ( * ) => "variant" ,
556
+ clean:: ForeignFunctionItem ( * ) => "ffi" ,
557
+ clean:: ForeignStaticItem ( * ) => "ffs" ,
556
558
}
557
559
}
558
560
@@ -592,7 +594,8 @@ impl<'self> fmt::Default for Item<'self> {
592
594
match it. item . inner {
593
595
clean:: ModuleItem ( ref m) => item_module ( fmt. buf , it. cx ,
594
596
it. item , m. items ) ,
595
- clean:: FunctionItem ( ref f) => item_function ( fmt. buf , it. item , f) ,
597
+ clean:: FunctionItem ( ref f) | clean:: ForeignFunctionItem ( ref f) =>
598
+ item_function ( fmt. buf , it. item , f) ,
596
599
clean:: TraitItem ( ref t) => item_trait ( fmt. buf , it. item , t) ,
597
600
clean:: StructItem ( ref s) => item_struct ( fmt. buf , it. item , s) ,
598
601
clean:: EnumItem ( ref e) => item_enum ( fmt. buf , it. item , e) ,
@@ -673,6 +676,10 @@ fn item_module(w: &mut io::Writer, cx: &Context,
673
676
( _, & clean:: EnumItem ( * ) ) => false ,
674
677
( & clean:: StaticItem ( * ) , _) => true ,
675
678
( _, & clean:: StaticItem ( * ) ) => false ,
679
+ ( & clean:: ForeignFunctionItem ( * ) , _) => true ,
680
+ ( _, & clean:: ForeignFunctionItem ( * ) ) => false ,
681
+ ( & clean:: ForeignStaticItem ( * ) , _) => true ,
682
+ ( _, & clean:: ForeignStaticItem ( * ) ) => false ,
676
683
( & clean:: TraitItem ( * ) , _) => true ,
677
684
( _, & clean:: TraitItem ( * ) ) => false ,
678
685
( & clean:: FunctionItem ( * ) , _) => true ,
@@ -700,27 +707,31 @@ fn item_module(w: &mut io::Writer, cx: &Context,
700
707
}
701
708
curty = myty;
702
709
write ! ( w, "<h2>{}</h2>\n <table>" , match myitem. inner {
703
- clean:: ModuleItem ( * ) => "Modules" ,
704
- clean:: StructItem ( * ) => "Structs" ,
705
- clean:: EnumItem ( * ) => "Enums" ,
706
- clean:: FunctionItem ( * ) => "Functions" ,
707
- clean:: TypedefItem ( * ) => "Type Definitions" ,
708
- clean:: StaticItem ( * ) => "Statics" ,
709
- clean:: TraitItem ( * ) => "Traits" ,
710
- clean:: ImplItem ( * ) => "Implementations" ,
711
- clean:: ViewItemItem ( * ) => "Reexports" ,
712
- clean:: TyMethodItem ( * ) => "Type Methods" ,
713
- clean:: MethodItem ( * ) => "Methods" ,
714
- clean:: StructFieldItem ( * ) => "Struct Fields" ,
715
- clean:: VariantItem ( * ) => "Variants" ,
710
+ clean:: ModuleItem ( * ) => "Modules" ,
711
+ clean:: StructItem ( * ) => "Structs" ,
712
+ clean:: EnumItem ( * ) => "Enums" ,
713
+ clean:: FunctionItem ( * ) => "Functions" ,
714
+ clean:: TypedefItem ( * ) => "Type Definitions" ,
715
+ clean:: StaticItem ( * ) => "Statics" ,
716
+ clean:: TraitItem ( * ) => "Traits" ,
717
+ clean:: ImplItem ( * ) => "Implementations" ,
718
+ clean:: ViewItemItem ( * ) => "Reexports" ,
719
+ clean:: TyMethodItem ( * ) => "Type Methods" ,
720
+ clean:: MethodItem ( * ) => "Methods" ,
721
+ clean:: StructFieldItem ( * ) => "Struct Fields" ,
722
+ clean:: VariantItem ( * ) => "Variants" ,
723
+ clean:: ForeignFunctionItem ( * ) => "Foreign Functions" ,
724
+ clean:: ForeignStaticItem ( * ) => "Foreign Statics" ,
716
725
} ) ;
717
726
}
718
727
719
728
match myitem. inner {
720
- clean:: StaticItem ( ref s) => {
729
+ clean:: StaticItem ( ref s) | clean :: ForeignStaticItem ( ref s ) => {
721
730
struct Initializer < ' self > ( & ' self str ) ;
722
731
impl < ' self > fmt:: Default for Initializer < ' self > {
723
732
fn fmt ( s : & Initializer < ' self > , f : & mut fmt:: Formatter ) {
733
+ if s. len ( ) == 0 { return ; }
734
+ write ! ( f. buf, "<code> = </code>" ) ;
724
735
let tag = if s. contains ( "\n " ) { "pre" } else { "code" } ;
725
736
write ! ( f. buf, "<{tag}>{}</{tag}>" ,
726
737
s. as_slice( ) , tag=tag) ;
@@ -729,7 +740,7 @@ fn item_module(w: &mut io::Writer, cx: &Context,
729
740
730
741
write ! ( w, "
731
742
<tr>
732
- <td><code>{}static {}: {} = </code>{}</td>
743
+ <td><code>{}static {}: {}</code>{}</td>
733
744
<td class='docblock'>{} </td>
734
745
</tr>
735
746
" ,
0 commit comments