about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorBrian Anderson <banderson@mozilla.com>2012-01-30 15:52:23 -0800
committerBrian Anderson <banderson@mozilla.com>2012-01-30 19:37:32 -0800
commitb8a683415c995bdb3d2e8bdc0d6a2bec7fe6cf1d (patch)
tree9886e9fb86b8161b572ad967353e35067e883ec5 /src
parentdd1564a6d34ccc80152a0b609022da03f5f5bfa8 (diff)
downloadrust-b8a683415c995bdb3d2e8bdc0d6a2bec7fe6cf1d.tar.gz
rust-b8a683415c995bdb3d2e8bdc0d6a2bec7fe6cf1d.zip
rustdoc: Add attribute parsing for ifaces and methods
Diffstat (limited to 'src')
-rw-r--r--src/rustdoc/attr_parser.rs23
1 files changed, 20 insertions, 3 deletions
diff --git a/src/rustdoc/attr_parser.rs b/src/rustdoc/attr_parser.rs
index 97c0f31ea5c..9d886b6d4c9 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<str>
@@ -56,6 +58,13 @@ type res_attrs = {
     args: [arg_attrs]
 };
 
+type iface_attrs = {
+    brief: option<str>,
+    desc: option<str>
+};
+
+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)
+}