`cargo doc` will generate docs with long descriptions. I did not add the settings of outputting these docs to `/website`. This is because - by publishing this crate to crates.io, users can see the docs in `docs.rs` like `https://docs.rs/guestfs/<version>/guestfs/`. It is easy to hold multiple documents corresponding to each version. - the style of the documents generated by `cargo doc` is far different from the documents which already exist. --- generator/rust.ml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/generator/rust.ml b/generator/rust.ml index 1f5cefa62..f62205185 100644 --- a/generator/rust.ml +++ b/generator/rust.ml @@ -52,6 +52,13 @@ let translate_bad_symbols s = else s +(* output longdesc to the rust file *) +let pr_longdesc name longdesc = + (* Lines should be at most 100 characters *) + (* And Each line begins with ' /// ' *) + let l = pod2text ~width:92 name longdesc in + List.iter (pr " /// %s\n") l + let generate_rust () = generate_header ~copyrights CStyle LGPLv2plus; @@ -398,6 +405,8 @@ extern \"C\" { style = (ret, args, optargs) } as f) -> let cname = snake2caml name in pr " /// %s\n" shortdesc; + pr " ///\n"; + pr_longdesc name longdesc; pr " #[allow(non_snake_case)]\n"; pr " pub fn %s" name; -- 2.20.1 (Apple Git-117)