{"id":22614358,"url":"https://github.com/melchisedech333/antlr4-demonstration-project","last_synced_at":"2025-07-16T12:34:13.613Z","repository":{"id":140760278,"uuid":"474722655","full_name":"melchisedech333/antlr4-demonstration-project","owner":"melchisedech333","description":":wrench: Demonstration of using ANTLR4 (with runtime for C++) in projects for context-free grammar processing. The ANTLR4 (Java) package is included, and the project is configured to compile on Linux.","archived":false,"fork":false,"pushed_at":"2022-10-17T19:18:26.000Z","size":2931,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-29T00:28:14.606Z","etag":null,"topics":["antlr","antlr-development-environment","antlr-grammar","antlr4-grammar","grammar-checker","grammar-parser","grammar-rules","grammars","grammars-utility","language-development","language-processors","semantic-analysis","semantics","syntax","syntax-analysis","syntax-analyzer","syntax-tree","tokenization","tokenizer","tokenizer-parser"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/melchisedech333.png","metadata":{"files":{"readme":"readme-pt.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"license","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["melchisedech333"]}},"created_at":"2022-03-27T18:21:30.000Z","updated_at":"2022-10-10T20:48:30.000Z","dependencies_parsed_at":null,"dependency_job_id":"f9b3da48-e95d-492a-94a9-a1647dc685d7","html_url":"https://github.com/melchisedech333/antlr4-demonstration-project","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/melchisedech333/antlr4-demonstration-project","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/melchisedech333%2Fantlr4-demonstration-project","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/melchisedech333%2Fantlr4-demonstration-project/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/melchisedech333%2Fantlr4-demonstration-project/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/melchisedech333%2Fantlr4-demonstration-project/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/melchisedech333","download_url":"https://codeload.github.com/melchisedech333/antlr4-demonstration-project/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/melchisedech333%2Fantlr4-demonstration-project/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263499193,"owners_count":23476021,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["antlr","antlr-development-environment","antlr-grammar","antlr4-grammar","grammar-checker","grammar-parser","grammar-rules","grammars","grammars-utility","language-development","language-processors","semantic-analysis","semantics","syntax","syntax-analysis","syntax-analyzer","syntax-tree","tokenization","tokenizer","tokenizer-parser"],"created_at":"2024-12-08T18:09:30.546Z","updated_at":"2025-07-04T11:06:11.921Z","avatar_url":"https://github.com/melchisedech333.png","language":"C++","funding_links":["https://github.com/sponsors/melchisedech333"],"categories":[],"sub_categories":[],"readme":"\u003cdiv align='center'\u003e\n\n\u003cimg src=\"extras/images/banner-2.jpg?v=123\" \u003e\n\n\u003c/div\u003e\n\n\u003cbr\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://github.com/sponsors/melchisedech333\"\u003e\u003cimg src=\"https://img.shields.io/badge/patrocinar-30363D?style=for-the-badge\u0026logo=GitHub-Sponsors\u0026logoColor=#white\" \u003e\u003c/a\u003e\n    \u003cbr\u003e\u003cbr\u003e\n    \u003cimg src=\"https://badgen.net/badge/nível de amor/7 de 10/purple\" \u003e\n    \u003cimg src=\"https://img.shields.io/github/languages/count/melchisedech333/antlr4-demonstration-project?color=%23f34b7d\u0026label=linguagens\" \u003e\n    \u003cimg src=\"https://img.shields.io/github/languages/top/melchisedech333/antlr4-demonstration-project?color=%23f34b7d\" \u003e\n    \u003cimg src=\"https://img.shields.io/github/directory-file-count/melchisedech333/antlr4-demonstration-project?label=arquivos\" \u003e\n    \u003cimg src=\"https://img.shields.io/github/repo-size/melchisedech333/antlr4-demonstration-project?label=tamanho repo\" \u003e\n    \u003cimg src=\"https://img.shields.io/github/license/melchisedech333/antlr4-demonstration-project?label=licen%C3%A7a\" \u003e\n\u003c/p\u003e\n\n\u003cbr\u003e\n\nLanguage: \u003ca href=\"readme.md\"\u003eEN-US\u003c/a\u003e\n\nEste é um projeto de demonstração de como utilizar o ANTLR4 com a C++ runtime.\n\nOs arquivos do projeto são os mesmos disponíveis no projeto oficial do ANTLR4, em seu diretório de demonstração. Também preservei os mesmos arquivos Lexer e Parser utilizados no repositório oficial.\n\nEste projeto está configurado para ser usado em sistemas Linux.\n\nObs: o arquivo de parser em C++ está localizado em \u003cb\u003eproject/demo/Linux/main.cpp\u003c/b\u003e.\n\n**Se meu código te ajudou em algo, considere [me patrocinar](https://github.com/sponsors/melchisedech333) :blue_heart:** \n\n\u003cbr\u003e\n\n:bookmark_tabs: Sumário\n-----\n- [:hammer_and_wrench: Instalação](#hammer_and_wrench-instalação)\n- [:link: Referências e Links](#link-referências-e-links)\n- [:smiley: Autor](#smiley-autor)\n- [:scroll: Licença](#scroll-licença)\n-----\n\n\u003cbr\u003e\n\n:hammer_and_wrench: Instalação\n---\n\n\u003cb\u003eRequisitos:\u003c/b\u003e\n- Java: openjdk 11.0.13 2021-10-19\n- Pacote Java ANTLR4 (ele já está incluído no diretório \u003cb\u003e/project/demo/antlr-4.9.2-complete.jar\u003c/b\u003e)\n- Have CMAKE installed, version used: 3.16.3\n\n\u003cbr\u003e\n\n\u003cb\u003eInstruções para compilar o projeto:\u003c/b\u003e\n- Dê permissões para os arquivos:\n```bash\nchmod +x clean.sh\nchmod +x clean-and-compile.sh\nchmod +x re-compile.sh\n```\n- Execute o arquivo \u003cb\u003eclean-and-compile.sh\u003c/b\u003e:\n```bash\n./clean-and-compile.sh\n```\n\nApós a compilação terminar, vai ser gerado um arquivo binário no diretório: \u003cb\u003eproject/build/demo/antlr4-demo\u003c/b\u003e. No entanto o script de compilação sempre copia o arquivo binário para o diretório em questão, renomeando-o para \u003cb\u003eparsing\u003c/b\u003e.\n\n\u003cb\u003eDescrições dos arquivos:\u003c/b\u003e\n- clean.sh - Limpa todos os arquivos temporários e gerados na compilação.\n- clean-and-compile.sh - Limpa todos os arquivos e recompila o projeto.\n- re-compile.sh - Limpa os arquivos temporários e compila o projeto, mas não precisando recompilá-lo inteiramente.\n- project/ - Diretório que contêm os arquivos do projeto.\n- project/demo/TLexer.g4 - Arquivo Lexer.\n- project/demo/TParser.g4 - Arquivo Parser.\n- project/demo/Linux/main.cpp - Arquivo C++ de controle do parser.\n\n\u003cbr\u003e\n\n:link: Referências e Links\n---\n\n- https://github.com/antlr/antlr4/blob/master/doc/cpp-target.md\n- https://github.com/antlr/antlr4/blob/master/runtime/Cpp/demo/README.md\n- https://github.com/antlr/antlr4/blob/master/runtime/Cpp/README.md\n\n\u003cbr\u003e\n\n:smiley: Autor\n---\n\nPatrocinar: [melchisedech333](https://github.com/sponsors/melchisedech333)\u003cbr\u003e\nTwitter: [Melchisedech333](https://twitter.com/Melchisedech333)\u003cbr\u003e\nLinkedIn: [Melchisedech Rex](https://www.linkedin.com/in/melchisedech-rex-724152235/)\u003cbr\u003e\nBlog: [melchisedech333.github.io](https://melchisedech333.github.io/)\u003cbr\u003e\n\n\u003ca href=\"https://github.com/melchisedech333\" \u003e\u003cimg src=\"https://github.com/melchisedech333.png?size=200\" height=\"100\" /\u003e\u003c/a\u003e\n\n\u003cbr\u003e\n\n:scroll: Licença\n---\n\n[ BSD-3-Clause license](./license)\n\n\u003cbr\u003e\u003cbr\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n## Lembre-se de deixar \u003cbr\u003e uma linda estrelinha :star_struck:\n\n\u003c/div\u003e\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmelchisedech333%2Fantlr4-demonstration-project","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmelchisedech333%2Fantlr4-demonstration-project","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmelchisedech333%2Fantlr4-demonstration-project/lists"}