(rootNode: TSNode, code: string)
| 59 | * Collect local class -> base class mappings from a module. |
| 60 | */ |
| 61 | export function collectClassBases(rootNode: TSNode, code: string): { [name: string]: string[] } { |
| 62 | const out: { [name: string]: string[] } = {}; |
| 63 | for (const classNode of queryNodes(rootNode, 'class_definition')) { |
| 64 | const nameNode = classNode.childForFieldName('name'); |
| 65 | const className = getNodeText(nameNode, code).trim(); |
| 66 | if (!className) {continue;} |
| 67 | out[className] = getBaseClasses(classNode); |
| 68 | } |
| 69 | return out; |
| 70 | } |
| 71 | |
| 72 | /** |
| 73 | * Parse dictionary argument (for keys, pull_keys, push_keys) |
no test coverage detected