{"id":17215646,"url":"https://github.com/mendelsshop/awk_interpreter","last_synced_at":"2025-03-25T13:21:38.609Z","repository":{"id":234847286,"uuid":"789614307","full_name":"mendelsshop/Awk_Interpreter","owner":"mendelsshop","description":null,"archived":false,"fork":false,"pushed_at":"2024-04-21T04:02:59.000Z","size":45237,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-30T12:16:37.360Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mendelsshop.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"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}},"created_at":"2024-04-21T03:52:20.000Z","updated_at":"2024-09-04T06:44:59.000Z","dependencies_parsed_at":"2024-04-21T04:40:44.702Z","dependency_job_id":"6bf54d0d-79a6-4c0c-8775-385f9bb0d38c","html_url":"https://github.com/mendelsshop/Awk_Interpreter","commit_stats":null,"previous_names":["mendelsshop/awk_interpreter"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mendelsshop%2FAwk_Interpreter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mendelsshop%2FAwk_Interpreter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mendelsshop%2FAwk_Interpreter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mendelsshop%2FAwk_Interpreter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mendelsshop","download_url":"https://codeload.github.com/mendelsshop/Awk_Interpreter/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245467747,"owners_count":20620240,"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":[],"created_at":"2024-10-15T03:25:09.197Z","updated_at":"2025-03-25T13:21:38.576Z","avatar_url":"https://github.com/mendelsshop.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AWK interpreter\n\n## Project organization\n\n```\n.\n├── get_awk_files.py\n├── lib\n│   ├── hamcrest-core-1.3.jar\n│   └── junit-4.13.2.jar\n├── LICENSE\n├── README.md\n├── src\n│   ├── AwkException.java\n│   ├── Awk.java\n│   ├── Functional\n│   │   ├── CheckedBiConsumer.java\n│   │   ├── CheckedBiFunction.java\n│   │   ├── CheckedConsumer.java\n│   │   ├── CheckedFunction.java\n│   │   ├── CheckedPredicate.java\n│   │   ├── CheckedRunnable.java\n│   │   └── CheckedSupplier.java\n│   ├── Interpreter\n│   │   ├── AwkRuntimeError.java\n│   │   ├── DisplayError.java\n│   │   ├── InterpreterArrayDataType.java\n│   │   ├── InterpreterDataType.java\n│   │   ├── Interpreter.java\n│   │   └── ReturnType.java\n│   ├── Lexer\n│   │   ├── FunctionalLexer.java\n│   │   ├── Lexer.java\n│   │   ├── StringHandler.java\n│   │   └── Token.java\n│   ├── Optional.java\n│   ├── Parser\n│   │   ├── AssignmentNode.java\n│   │   ├── BlockNode.java\n│   │   ├── BreakNode.java\n│   │   ├── BuiltInFunctionDefinitionNode.java\n│   │   ├── ConstantNode.java\n│   │   ├── ContinueNode.java\n│   │   ├── DeleteNode.java\n│   │   ├── DoWhileNode.java\n│   │   ├── ForEachNode.java\n│   │   ├── ForNode.java\n│   │   ├── FunctionCallNode.java\n│   │   ├── FunctionNode.java\n│   │   ├── IfNode.java\n│   │   ├── Node.java\n│   │   ├── OperationNode.java\n│   │   ├── Parser.java\n│   │   ├── PatternNode.java\n│   │   ├── ProgramNode.java\n│   │   ├── ReturnNode.java\n│   │   ├── StatementNode.java\n│   │   ├── TernaryOperationNode.java\n│   │   ├── TokenHandler.java\n│   │   ├── VariableReferenceNode.java\n│   │   └── WhileNode.java\n│   └── UnitTests\n│       ├── InterpreterTests.java\n│       ├── LexerTests.java\n│       ├── LineManagerTests.java\n│       ├── ParserTests.java\n│       ├── StringHandlerTests.java\n│       ├── TokenHandlerTests.java\n│       └── UnitTests.java\n├── tests\n│   ├── 10-Interpreter.jar\n│   ├── backtick\n│   │   ├── csv.awk\n│   │   ├── fen.awk\n│   │   ├── find_special_class.awk\n│   │   ├── imager.awk\n│   │   ├── mangler.awk\n│   │   ├── math.awk\n│   │   ├── misc1.awk\n│   │   └── scheme.awk\n│   ├── extra\n│   │   ├── data.awk\n│   │   ├── ex.awk\n│   │   └── work.awk\n│   ├── files.txt\n│   ├── normal\n│   │   ├── csv.awk\n│   │   ├── fen.awk\n│   │   ├── find_special_class.awk\n│   │   ├── imager.awk\n│   │   ├── mangler.awk\n│   │   ├── math.awk\n│   │   ├── misc1.awk\n│   │   └── scheme.awk\n│   └── text\n│       ├── art\n│       ├── classes\n│       ├── example.txt\n│       ├── fen.txt\n│       ├── foo\n│       ├── hello.rkt\n│       ├── lorum_ipsum\n│       └── sample.csv\n└── test.sh\n```\n\nThe awk files are generated from using `get_awk_files.py` (and will probably be different then the ones shown here) are required for the first unit test to work (see `root/src/UnitTests.java` for more info)\n\nThe reason there is no `import java.util.Optional` is because I am using a custom version of `Optional` in `root/src/Optional.java`.\n\nSome unit tests require java 21 preview for `instanceof` pattern matching.\n\nToo run the integration tests, run `test.sh` from the root directory with the path java 21 excuatable.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmendelsshop%2Fawk_interpreter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmendelsshop%2Fawk_interpreter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmendelsshop%2Fawk_interpreter/lists"}