Build class signature
(&self, node: &Node, source: &str)
| 1021 | |
| 1022 | /// Build class signature |
| 1023 | fn build_class_signature(&self, node: &Node, source: &str) -> String { |
| 1024 | let name = node |
| 1025 | .child_by_field_name("name") |
| 1026 | .and_then(|n| self.node_text(&n, source)) |
| 1027 | .unwrap_or_default(); |
| 1028 | |
| 1029 | // Check for extends |
| 1030 | let extends = self.get_class_heritage(node, source, "extends"); |
| 1031 | // Check for implements |
| 1032 | let implements = self.get_class_heritage(node, source, "implements"); |
| 1033 | |
| 1034 | let mut sig = format!("class {}", name); |
| 1035 | |
| 1036 | if !extends.is_empty() { |
| 1037 | sig.push_str(&format!(" extends {}", extends)); |
| 1038 | } |
| 1039 | if !implements.is_empty() { |
| 1040 | sig.push_str(&format!(" implements {}", implements)); |
| 1041 | } |
| 1042 | |
| 1043 | sig |
| 1044 | } |
| 1045 | |
| 1046 | /// Get class heritage (extends or implements) |
| 1047 | fn get_class_heritage(&self, node: &Node, source: &str, heritage_type: &str) -> String { |
no test coverage detected