百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
P

protoc-gen-star

> 编程语言
开源

用于高效生成基于原型的代码的 protoc 插件库

670 stars0 点赞1 次浏览
访问官网GitHub

工具介绍

用于高效生成基于原型的代码的 protoc 插件库

protoc-gen-star (PG*) !!! THIS PROJECT IS A WORK-IN-PROGRESS | THE API SHOULD BE CONSIDERED UNSTABLE !!! PG* 是一个用于高效生成基于 proto 的代码的 protoc 插件库

go
package main

import "github.com/lyft/protoc-gen-star/v2"

func main() {
  pgs.Init(pgs.DebugEnv("DEBUG")).
    RegisterModule(&myPGSModule{}).
    RegisterPostProcessor(&myPostProcessor{}).
    Render()
}
  • 基于接口的、完全关联的依赖图,并提供对原始描述符的访问
  • 内置的上下文感知调试功能
  • 详尽的、接近 100% 的单元测试覆盖率
  • 可通过可覆盖的 IO 和基于接口的 API 进行端到端测试
  • [Visitor][visitor] 规范和助手,用于高效地遍历依赖图
  • [BuildContext][context] 用于方便地生成复杂代码
  • 解析的、带类型的命令行 [Parameters][params] 访问
  • 可扩展的 ModuleBase 用于快速创建 Modules 并方便地生成代码
  • 可配置生成文件的后处理(例如 gofmt)
  • 支持处理来自多个包的原型文件
  • 从原型文件中加载注释(通过 SourceCodeInfo),将其加载到收集的 AST 中,以便方便地访问
  • 用于处理常见、细微的生成任务的语言特定的辅助子包
  • 在运行时使用 Go 共享库加载插件/模块

[protoc-gen-example][pge] 可在 testdata 目录中找到。它包含两个使用各种可用功能的 Module 实现。protoc 的执行结果包含在 testdata/generated [Makefile][make] 目标中。

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

Golyft

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言