diff options
author | Emanuele Grasso <96300448+L0P0P@users.noreply.github.com> | 2024-07-14 18:48:09 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-07-14 18:48:09 +0200 |
commit | ce49d20a5fe3726e1800bc495a25c7617212abf4 (patch) | |
tree | 5a1a79efa79e7bf6dcf3d3151aec2edf6a47b3e7 /src/ast/nodes/SimpleStmtNode.java | |
parent | 57599a42b863cc48050c137de2ec108aa1d59a44 (diff) |
Reaching definition analysis (#17)
Co-authored-by: Santo Cariotti <santo@dcariotti.me>
Co-authored-by: geno <gabriele.genovese2@studio.unibo.it>
Co-authored-by: geno <gabrigeno@gmail.com>
Diffstat (limited to 'src/ast/nodes/SimpleStmtNode.java')
-rw-r--r-- | src/ast/nodes/SimpleStmtNode.java | 48 |
1 files changed, 38 insertions, 10 deletions
diff --git a/src/ast/nodes/SimpleStmtNode.java b/src/ast/nodes/SimpleStmtNode.java index 31a935f..3952242 100644 --- a/src/ast/nodes/SimpleStmtNode.java +++ b/src/ast/nodes/SimpleStmtNode.java @@ -73,28 +73,56 @@ public class SimpleStmtNode implements Node { } @Override - public String toPrint(String prefix) { + public String printAST(String prefix) { String str = prefix + "SimpleStmt\n"; prefix += " "; if (assignment != null) { - str += assignment.toPrint(prefix); + str += assignment.printAST(prefix); + } else if (expr != null) { + str += expr.printAST(prefix); + } else if (returnStmt != null) { + str += returnStmt.printAST(prefix); + } else if (importStmt != null) { + str += importStmt.printAST(prefix); } - if (expr != null) { - str += expr.toPrint(prefix); - } + return str; + } - if (returnStmt != null) { - str += returnStmt.toPrint(prefix); - } + @Override + public String toPrint(String prefix) { + + String str = prefix; - if (importStmt != null) { - str += importStmt.toPrint(prefix); + if (assignment != null) { + str += assignment.toPrint(""); + } else if (expr != null) { + str += expr.toPrint(""); + } else if (returnStmt != null) { + str += returnStmt.toPrint(""); + } else if (importStmt != null) { + str += importStmt.toPrint(""); } return str; } + public Node getImportStmt() { + return importStmt; + } + + public Node getReturnStmt() { + return returnStmt; + } + + public Node getAssignment() { + return assignment; + } + + public Node getExpr() { + return expr; + } + } |