get_class_members
Retrieve all methods, fields, and nested types of a C/C++ class or struct, grouped by kind for easy navigation.
Instructions
Return all methods, fields, and nested types of a C/C++ class/struct — libclang-powered member table. Groups members by kind (method, constructor, field, enum, etc.), distinguishing class members from free functions across the entire codebase.
Members are grouped by kind (method, constructor, destructor, field, enum, typedef, class, struct). Each member includes its signature, virtual flags, and source line. Works for C structs too — they just won't have methods.
For inheritance hierarchy use get_inheritance_chain. For individual
method details use get_symbol_context.
Read-only. No side effects.
Args:
class_name: Class or struct name. E.g. 'ModemManager' or
'zbox::ZMODEM'.
project_root: Project root. Auto-detected if omitted.
Returns: dict: {name, qualified_name, kind, file, line, members: {kind: [{name, qualified_name, signature, is_virtual, is_pure_virtual, line}]}, member_count}
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| class_name | Yes | Class or struct name. E.g. 'ModemManager' or 'zbox::ZMODEM'. | |
| project_root | No | Project root. Auto-detected if omitted. |