ANTLR (언어 인식을 위한 또 다른 도구)은 구조화된 텍스트 또는 바이너리 파일을 읽고, 처리하고, 실행하거나 번역하기 위한 강력한 파서 생성기입니다. 언어, 도구 및 프레임워크를 구축하는 데 널리 사용됩니다. 문법에서 ANTLR은 구문 분석 트리를 구축할 수 있는 구문 분석기를 생성하고 관심 문구 인식에 쉽게 응답할 수 있게 해주는 청취자 인터페이스(또는 방문자)도 생성합니다.
Dev 브랜치 빌드 상태
(github 작업)
ANTLR 4는 10개의 대상 언어(Cpp, CSharp, Dart, Java, JavaScript, PHP, Python3, Swift, TypeScript, Go)를 지원하며 이러한 대상 간의 일관성을 보장하는 것은 독특하고 매우 가치 있는 기능입니다. 이 기능을 적절하게 지원하기 위해 ANTLR의 각 릴리스는 도구와 10개의 런타임이 모두 동일한 버전으로 완전한 릴리스입니다. 따라서 ANTLR 버전 관리는 semver 의미 체계를 엄격하게 따르지 않습니다.
CI에서 semver 검증기를 사용하는 경우 사소한 변경을 주요 변경으로 처리하는 등 ANTLR에 대한 특수 규칙을 적용하고 싶을 수도 있습니다.
이 저장소의 기본 브랜치는 master
입니다. 이는 최신 안정 릴리스이며 다양한 릴리스에 대한 태그가 있습니다. 예를 들어 릴리스 태그 4.9.3을 참조하세요. 브랜치 dev
은 릴리스 간에 개발이 이루어지는 곳이며 모든 풀 요청은 해당 브랜치에서 파생되어야 합니다. dev
브랜치는 master
로 다시 병합되어 릴리스를 잘라내고 릴리스 상태에 태그가 지정됩니다(예: 4.10-rc1
또는 4.10
.). 시각적으로 우리 프로세스는 대략 다음과 같습니다.
Go 대상에는 이제 자체 전용 저장소가 있습니다.
$ go get github.com/antlr4-go/antlr
참고 전용 Go 저장소는 go get
및 import
오기 전용입니다. Go 런타임 개발은 여전히 기본 antlr/antlr4
저장소에서 수행됩니다.
특히 다양한 대상 언어를 다루려는 경우 다음 페이지가 유용할 수도 있습니다.
프로그래머는 항상 구문 분석 문제에 직면합니다. JSON과 같은 데이터 형식, SMTP와 같은 네트워크 프로토콜, Apache용 서버 구성 파일, PostScript/PDF 파일, 간단한 스프레드시트 매크로 언어 등 ANTLR v4와 이 책을 통해 프로세스를 쉽게 이해할 수 있습니다. ANTLR v4는 파서 및 그 위에 구축된 언어 애플리케이션을 그 어느 때보다 쉽게 구축할 수 있도록 처음부터 다시 작성되었습니다. 베스트셀러 Definitive ANTLR Reference의 완전히 재작성된 새 버전은 이러한 새로운 기능을 활용하는 방법을 보여줍니다.
Amazon에서 The Definitive ANTLR 4 Reference 책을 구입하거나 출판사 사이트에서 전자 버전을 구입할 수 있습니다.
Book 소스 코드가 유용하다는 것을 알게 될 것입니다.
이 저장소는 루트 디렉토리 이름이 문법에 의해 구문 분석된 언어의 모두 소문자 이름인 작업이 없는 문법 모음입니다. 예를 들어 java, cpp, csharp, c 등...