diff options
Diffstat (limited to 'cli')
-rw-r--r-- | cli/doc/printer.rs | 12 | ||||
-rw-r--r-- | cli/doc/tests.rs | 4 |
2 files changed, 16 insertions, 0 deletions
diff --git a/cli/doc/printer.rs b/cli/doc/printer.rs index d7a754933..d24e65901 100644 --- a/cli/doc/printer.rs +++ b/cli/doc/printer.rs @@ -41,6 +41,7 @@ pub fn format_details(node: doc::DocNode) -> String { let maybe_extra = match node.kind { DocNodeKind::Class => Some(format_class_details(node)), + DocNodeKind::Enum => Some(format_enum_details(node)), DocNodeKind::Namespace => Some(format_namespace_details(node)), _ => None, }; @@ -412,6 +413,17 @@ fn format_class_details(node: doc::DocNode) -> String { details } +fn format_enum_details(node: doc::DocNode) -> String { + let mut details = String::new(); + let enum_def = node.enum_def.unwrap(); + for member in enum_def.members { + details + .push_str(&add_indent(format!("{}\n", colors::bold(member.name)), 1)); + } + details.push_str("\n"); + details +} + fn format_namespace_details(node: doc::DocNode) -> String { let mut ns = String::new(); diff --git a/cli/doc/tests.rs b/cli/doc/tests.rs index cfa87bf96..f3355a520 100644 --- a/cli/doc/tests.rs +++ b/cli/doc/tests.rs @@ -885,6 +885,10 @@ export enum Hello { assert_eq!(actual, expected_json); assert!(colors::strip_ansi_codes( + super::printer::format_details(entry.clone()).as_str() + ) + .contains("World")); + assert!(colors::strip_ansi_codes( super::printer::format(entries.clone()).as_str() ) .contains("Some enum for good measure")); |