antlr4-go/antlr

GitHub: antlr4-go/antlr

ANTLR4 Go Runtime 的官方独立发布仓库,解决了主仓库深层目录导致 Go modules 无法正确解析语义化版本标签的问题。

Stars: 147 | Forks: 25

[![Go Report Card](https://goreportcard.com/badge/github.com/antlr4-go/antlr?style=flat-square)](https://goreportcard.com/report/github.com/antlr4-go/antlr) [![PkgGoDev](https://pkg.go.dev/badge/github.com/github.com/antlr4-go/antlr)](https://pkg.go.dev/github.com/antlr4-go/antlr) [![Release](https://img.shields.io/github/v/release/antlr4-go/antlr?sort=semver&style=flat-square)](https://github.com/antlr4-go/antlr/releases/latest) [![Release](https://img.shields.io/github/go-mod/go-version/antlr4-go/antlr?style=flat-square)](https://github.com/antlr4-go/antlr/releases/latest) [![Maintenance](https://img.shields.io/badge/Maintained%3F-yes-green.svg?style=flat-square)](https://github.com/antlr4-go/antlr/commit-activity) [![License](https://img.shields.io/badge/License-BSD_3--Clause-blue.svg)](https://opensource.org/licenses/BSD-3-Clause) [![GitHub stars](https://img.shields.io/github/stars/antlr4-go/antlr?style=flat-square&label=Star&maxAge=2592000)](https://GitHub.com/Naereen/StrapDown.js/stargazers/) # ANTLR4 Go Runtime Module Repo 重要提示:请通过 https://github.com/antlr/antlr4 仓库的克隆提交 PR,而不是在此处提交。 - 请勿向此仓库提交 PR 或任何更改请求 - 此仓库为只读状态,由 ANTLR 团队更新,用于发布 ANTLR 的 Go Runtime 新版本 - 此仓库包含你生成的项目应导入的 Go runtime ## 简介 此仓库包含 ANTLR Go Runtime 的官方 module。它是所维护的 runtime 的副本, 位于:https://github.com/antlr/antlr4/tree/master/runtime/Go/antlr,并由 ANTLR 团队自动更新, 仅用于发布官方的 Go runtime。此仓库不进行任何开发工作,也不接受 PR。 此仓库的 dev 分支与主 ANTLR 仓库的 dev 分支保持同步,并会定期更新。 ### 为什么? `go get` 命令在 Go runtime 嵌入主仓库如此深处时无法正确获取它。 对 `antlr/antlr4` 仓库执行 `go get`,虽然能获取到正确的 runtime 源代码,但无法正确解析 tag, 并且会在你的 `go.mod` 文件中生成不明确的引用,这会导致无法平滑升级并引起混乱。 例如,当前在 `antlr/antlr4` 中标记为 v4.13.0 的 Go runtime 版本,通过 go get 获取到的内容如下: ``` require ( github.com/antlr/antlr4/runtime/Go/antlr/v4 v4.0.0-20230219212500-1f9a474cc2dc ) ``` 而你期望看到的是: ``` require ( github.com/antlr/antlr4/runtime/Go/antlr/v4 v4.13.0 ) ``` 因此,我们决定在一个单独的仓库中创建一个单独的组织,以存放 ANTLR 的官方 Go runtime,这样用户就可以期望 `go get` 能够按预期工作。 # 文档 请阅读官方文档:https://github.com/antlr/antlr4/blob/master/doc/index.md,以获取有关将现有项目迁移至使用新 module 位置的提示,以及有关如何使用 Go runtime 的常规信息。
标签:ANTLR4, EVTX分析, Go, Ruby工具, SOC Prime, 开发工具, 日志审计, 编译原理, 解析器生成器, 运行时环境