diff --git a/src/rustdoc/attr_parser.rs b/src/rustdoc/attr_parser.rs index 97c0f31ea5c9..9d886b6d4c91 100644 --- a/src/rustdoc/attr_parser.rs +++ b/src/rustdoc/attr_parser.rs @@ -10,9 +10,11 @@ import rustc::front::attr; import core::tuple; export crate_attrs, mod_attrs, fn_attrs, arg_attrs, - const_attrs, enum_attrs, variant_attrs, res_attrs; + const_attrs, enum_attrs, variant_attrs, res_attrs, + iface_attrs, method_attrs; export parse_crate, parse_mod, parse_fn, parse_const, - parse_enum, parse_variant, parse_res; + parse_enum, parse_variant, parse_res, + parse_iface, parse_method; type crate_attrs = { name: option @@ -56,6 +58,13 @@ type res_attrs = { args: [arg_attrs] }; +type iface_attrs = { + brief: option, + desc: option +}; + +type method_attrs = fn_attrs; + #[cfg(test)] mod test { @@ -481,4 +490,12 @@ fn shoulde_parse_resource_arg() { let attrs = parse_res(attrs); assert attrs.args[0].name == "a"; assert attrs.args[0].desc == "b"; -} \ No newline at end of file +} + +fn parse_iface(attrs: [ast::attribute]) -> iface_attrs { + parse_basic(attrs) +} + +fn parse_method(attrs: [ast::attribute]) -> method_attrs { + parse_fn(attrs) +}