MCPcopy Create free account
hub / github.com/ScriptedAlchemy/tracedecay / extract_java_docstring

Method extract_java_docstring

src/extraction/java_extractor.rs:1005–1024  ·  view source on GitHub ↗

Extract Java-style doc comments (/** ... */) preceding a declaration.

(state: &ExtractionState, node: TsNode<'_>)

Source from the content-addressed store, hash-verified

1003
1004 /// Extract Java-style doc comments (/** ... */) preceding a declaration.
1005 fn extract_java_docstring(state: &ExtractionState, node: TsNode<'_>) -> Option<String> {
1006 let mut current = node.prev_named_sibling();
1007 while let Some(sibling) = current {
1008 match sibling.kind() {
1009 "block_comment" => {
1010 let text = state.node_text(sibling);
1011 if text.starts_with("/**") {
1012 return Some(Self::clean_javadoc(&text));
1013 }
1014 // Skip non-javadoc block comments.
1015 current = sibling.prev_named_sibling();
1016 }
1017 "line_comment" => {
1018 current = sibling.prev_named_sibling();
1019 }
1020 _ => break,
1021 }
1022 }
1023 None
1024 }
1025
1026 /// Clean a Javadoc comment block, stripping the /** and */ markers and leading * on each line.
1027 fn clean_javadoc(comment: &str) -> String {

Callers

nothing calls this directly

Calls 2

kindMethod · 0.80
node_textMethod · 0.45

Tested by

no test coverage detected