diff options
author | AidenRushbrooke <72034940+AidenRushbrooke@users.noreply.github.com> | 2021-11-06 01:44:14 +0000 |
---|---|---|
committer | AidenRushbrooke <72034940+AidenRushbrooke@users.noreply.github.com> | 2021-11-06 01:44:14 +0000 |
commit | 0c54d7f8cb4b17d80ed21f7a9916ad27a13e34ed (patch) | |
tree | d64267b7da1691bad8797f81188798fb9628a212 /src/Compiler/Statement.java | |
parent | d3c80f8bd236b1b4ed571ed6b347095efdaa99ed (diff) | |
download | esotericFORTRAN-0c54d7f8cb4b17d80ed21f7a9916ad27a13e34ed.tar.gz esotericFORTRAN-0c54d7f8cb4b17d80ed21f7a9916ad27a13e34ed.zip |
Re-arranged files and added C compilation
Diffstat (limited to 'src/Compiler/Statement.java')
-rw-r--r-- | src/Compiler/Statement.java | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/src/Compiler/Statement.java b/src/Compiler/Statement.java new file mode 100644 index 0000000..885e462 --- /dev/null +++ b/src/Compiler/Statement.java @@ -0,0 +1,49 @@ +package Compiler; + +abstract class Statement { + + static class ExpressionStatement extends Statement{ + ExpressionStatement(Expression expr){ + this.expr = expr; + } + + + final Expression expr; + + @Override + public String getStatmentType() { + return "exprStmt"; + } + } + + + static class VariableDeclaration extends Statement{ + VariableDeclaration(Token name){ + this.name=name; + } + + + final Token name; + + @Override + public String getStatmentType() { + return "vardec"; + } + + } + + static class PrintStatement extends Statement{ + PrintStatement(Expression expr){ + this.expr=expr; + } + final Expression expr; + + @Override + public String getStatmentType() { + return "print"; + } + } + + + public abstract String getStatmentType(); +} |