diff options
author | jwansek <eddie.atten.ea29@gmail.com> | 2021-10-18 16:40:56 +0100 |
---|---|---|
committer | jwansek <eddie.atten.ea29@gmail.com> | 2021-10-18 16:40:56 +0100 |
commit | e09b0bb865bbb0087c46b4acd90b759f14dfa824 (patch) | |
tree | 824f93a769d5ae3b38b4f6b3597347b78478e69c /code/simpleSableCCCalulator/sableCCCalculator/ProgramStack.java | |
parent | 3c3706a8957f27d7bcb553eff6ded1c6dc76fa24 (diff) | |
download | esotericFORTRAN-e09b0bb865bbb0087c46b4acd90b759f14dfa824.tar.gz esotericFORTRAN-e09b0bb865bbb0087c46b4acd90b759f14dfa824.zip |
added sableCC calculator
Diffstat (limited to 'code/simpleSableCCCalulator/sableCCCalculator/ProgramStack.java')
-rw-r--r-- | code/simpleSableCCCalulator/sableCCCalculator/ProgramStack.java | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/code/simpleSableCCCalulator/sableCCCalculator/ProgramStack.java b/code/simpleSableCCCalulator/sableCCCalculator/ProgramStack.java new file mode 100644 index 0000000..1875e57 --- /dev/null +++ b/code/simpleSableCCCalulator/sableCCCalculator/ProgramStack.java @@ -0,0 +1,28 @@ +package sableCCCalculator; +import sableCCCalculator.node.*; +import java.util.Stack; + +public class ProgramStack<T extends Token> extends Stack<T> { + + public String toString() { + String out = "Stack is now: ["; + for (int i = 0; i < this.size(); i++) { + String theStr = this.elementAt(i).toString(); + out += String.format("%s, ", theStr.substring(0, theStr.length() - 1)); + } + return out.substring(0, out.length() - 2) + "]"; + } + + public static void main(String[] args) { + ProgramStack<Token> myStack = new ProgramStack<>(); + myStack.add(new TNumber("2")); + myStack.add(new TNumber("4")); + myStack.add(new TNumber("6")); + myStack.add(new TNumber("0")); + myStack.add(new TNumber("1")); + myStack.add(new TDouble("24601.10642")); + + System.out.println(myStack.pop().getText()); + System.out.println(myStack); + } +} |