Coder Social home page Coder Social logo

awk_interpreter's Introduction

AWK interpreter

Project organization

.
├── get_awk_files.py
├── lib
│   ├── hamcrest-core-1.3.jar
│   └── junit-4.13.2.jar
├── LICENSE
├── README.md
├── src
│   ├── AwkException.java
│   ├── Awk.java
│   ├── Functional
│   │   ├── CheckedBiConsumer.java
│   │   ├── CheckedBiFunction.java
│   │   ├── CheckedConsumer.java
│   │   ├── CheckedFunction.java
│   │   ├── CheckedPredicate.java
│   │   ├── CheckedRunnable.java
│   │   └── CheckedSupplier.java
│   ├── Interpreter
│   │   ├── AwkRuntimeError.java
│   │   ├── DisplayError.java
│   │   ├── InterpreterArrayDataType.java
│   │   ├── InterpreterDataType.java
│   │   ├── Interpreter.java
│   │   └── ReturnType.java
│   ├── Lexer
│   │   ├── FunctionalLexer.java
│   │   ├── Lexer.java
│   │   ├── StringHandler.java
│   │   └── Token.java
│   ├── Optional.java
│   ├── Parser
│   │   ├── AssignmentNode.java
│   │   ├── BlockNode.java
│   │   ├── BreakNode.java
│   │   ├── BuiltInFunctionDefinitionNode.java
│   │   ├── ConstantNode.java
│   │   ├── ContinueNode.java
│   │   ├── DeleteNode.java
│   │   ├── DoWhileNode.java
│   │   ├── ForEachNode.java
│   │   ├── ForNode.java
│   │   ├── FunctionCallNode.java
│   │   ├── FunctionNode.java
│   │   ├── IfNode.java
│   │   ├── Node.java
│   │   ├── OperationNode.java
│   │   ├── Parser.java
│   │   ├── PatternNode.java
│   │   ├── ProgramNode.java
│   │   ├── ReturnNode.java
│   │   ├── StatementNode.java
│   │   ├── TernaryOperationNode.java
│   │   ├── TokenHandler.java
│   │   ├── VariableReferenceNode.java
│   │   └── WhileNode.java
│   └── UnitTests
│       ├── InterpreterTests.java
│       ├── LexerTests.java
│       ├── LineManagerTests.java
│       ├── ParserTests.java
│       ├── StringHandlerTests.java
│       ├── TokenHandlerTests.java
│       └── UnitTests.java
├── tests
│   ├── 10-Interpreter.jar
│   ├── backtick
│   │   ├── csv.awk
│   │   ├── fen.awk
│   │   ├── find_special_class.awk
│   │   ├── imager.awk
│   │   ├── mangler.awk
│   │   ├── math.awk
│   │   ├── misc1.awk
│   │   └── scheme.awk
│   ├── extra
│   │   ├── data.awk
│   │   ├── ex.awk
│   │   └── work.awk
│   ├── files.txt
│   ├── normal
│   │   ├── csv.awk
│   │   ├── fen.awk
│   │   ├── find_special_class.awk
│   │   ├── imager.awk
│   │   ├── mangler.awk
│   │   ├── math.awk
│   │   ├── misc1.awk
│   │   └── scheme.awk
│   └── text
│       ├── art
│       ├── classes
│       ├── example.txt
│       ├── fen.txt
│       ├── foo
│       ├── hello.rkt
│       ├── lorum_ipsum
│       └── sample.csv
└── test.sh

The 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)

The reason there is no import java.util.Optional is because I am using a custom version of Optional in root/src/Optional.java.

Some unit tests require java 21 preview for instanceof pattern matching.

Too run the integration tests, run test.sh from the root directory with the path java 21 excuatable.

awk_interpreter's People

Contributors

mendelsshop avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.