Swift Doc-C 能否选择性生成文档?指定类、结构体或文件夹
用doc-c筛选生成特定类、结构体或文件夹的文档
完全可以通过doc-c的命令行参数或配置文件实现精准筛选,以下是具体实现方式:
1. 指定特定类/结构体
使用--include-types参数指定要生成文档的类或结构体名称,多个目标用逗号分隔:
doc-c generate --include-types=UserModel,OrderStruct
如果需要排除某些类型,使用--exclude-types参数:
doc-c generate --exclude-types=InternalUtils,TempStruct
2. 限定目标文件夹
通过--include-paths参数指定要扫描的文件夹路径,多个路径用空格分隔:
doc-c generate --include-paths=./src/public-api ./src/core-models
同理,用--exclude-paths排除不需要的目录:
doc-c generate --exclude-paths=./src/tests ./src/internal-components
3. 配置文件批量配置(推荐)
创建doc-c.config.json配置文件,在其中定义完整的筛选规则:
{ "includePaths": ["./src/public-api", "./src/core-models"], "excludePaths": ["./src/tests", "./src/internal-components"], "includeTypes": ["UserModel", "OrderStruct"], "excludeTypes": ["InternalUtils", "TempStruct"] }
运行命令时加载该配置:
doc-c generate --config=doc-c.config.json
4. 代码内标记控制
在代码中通过特殊注释标记,直接控制单个类型是否生成文档:
- 标记为需要生成文档:在类/结构体上方添加
/// @doc-include - 标记为排除:在类/结构体上方添加
/// @doc-exclude
示例代码:
/// @doc-include typedef struct { int user_id; char* username; } UserModel; /// @doc-exclude typedef struct { char* session_key; } SessionState;
内容的提问来源于stack exchange,提问作者user1845926
相关产品推荐
相关产品推荐

