nargo-metadata 0.0.0

Nargo metadata management
Documentation

nargo-metadata

Nargo 框架的 API 元数据提取与管理工具,为代码与文档之间搭建智能桥梁。

📖 简介

nargo-metadata 是 Nargo 编译工具链中的 API 元数据提取组件。它能够从源代码和 IR(中间表示)中自动提取 API 端点信息、类型定义和其他结构化元数据,为文档生成、类型检查和开发工具提供基础数据支持。

✨ 核心特性

  • API 端点提取: 自动识别和解析源代码中的 HTTP 装饰器(如 @http),提取控制器、方法、路径和参数信息。
  • 类型定义解析: 从源代码中提取类和接口定义,构建完整的类型系统元数据。
  • 多格式支持: 支持从不同格式的源代码中提取元数据,包括普通函数、异步函数和类方法。
  • 结构化输出: 所有提取的元数据均以统一的 JSON 可序列化格式输出,便于集成到其他工具中。

🏗️ 核心数据结构

  • ApiMetadata: 元数据的顶层容器,包含 API 端点列表和类型定义映射。
  • ApiEndpoint: 表示单个 API 端点,包含控制器、方法名、HTTP 方法、路径、参数和返回类型等信息。
  • ApiParam: 表示 API 端点的参数,包含名称、参数类型(Body、Path、Query 等)、类型名称和提取器参数。
  • TypeDefinition: 表示自定义类型定义,包含类型名称和字段列表。
  • ApiMetadataExtractor: 元数据提取引擎,负责从源代码和 IR 中提取元数据。

🔗 相关项目

  • nargo-ir: 提供中间表示,用于更深入的元数据提取。
  • nargo-types: 定义了元数据中使用的通用类型和错误处理系统。
  • nargo-document: 利用提取的元数据生成 API 文档。