diff options
author | Danny van Bruggen <hexagonaal@gmail.com> | 2018-01-17 18:52:27 +0100 |
---|---|---|
committer | Danny van Bruggen <hexagonaal@gmail.com> | 2018-01-17 18:52:27 +0100 |
commit | b758ad11c85860f1ebcfefd48f481b365868a6de (patch) | |
tree | 5ed819f3de51ebe8be4bf0efb114847170caae1b /javaparser-core/src/main/java/com/github/javaparser/ast/expr | |
parent | ada1e3c6ca1cc601fd83c51a0242f3fc56ce2c5d (diff) | |
download | platform_external_javaparser-b758ad11c85860f1ebcfefd48f481b365868a6de.tar.gz platform_external_javaparser-b758ad11c85860f1ebcfefd48f481b365868a6de.tar.bz2 platform_external_javaparser-b758ad11c85860f1ebcfefd48f481b365868a6de.zip |
Link the operators from assign expressions and binary expressions.
Diffstat (limited to 'javaparser-core/src/main/java/com/github/javaparser/ast/expr')
-rw-r--r-- | javaparser-core/src/main/java/com/github/javaparser/ast/expr/AssignExpr.java | 32 | ||||
-rw-r--r-- | javaparser-core/src/main/java/com/github/javaparser/ast/expr/BinaryExpr.java | 46 |
2 files changed, 45 insertions, 33 deletions
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/AssignExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/AssignExpr.java index 626afbd4c..dd7b841b5 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/AssignExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/AssignExpr.java @@ -49,28 +49,34 @@ public final class AssignExpr extends Expression { public enum Operator implements Printable { - ASSIGN("="), - PLUS("+="), - MINUS("-="), - MULTIPLY("*="), - DIVIDE("/="), - AND("&="), - OR("|="), - XOR("^="), - REMAINDER("%="), - LEFT_SHIFT("<<="), - SIGNED_RIGHT_SHIFT(">>="), - UNSIGNED_RIGHT_SHIFT(">>>="); + ASSIGN("=", null), + PLUS("+=", BinaryExpr.Operator.PLUS), + MINUS("-=", BinaryExpr.Operator.MINUS), + MULTIPLY("*=", BinaryExpr.Operator.MULTIPLY), + DIVIDE("/=", BinaryExpr.Operator.DIVIDE), + BINARY_AND("&=", BinaryExpr.Operator.BINARY_AND), + BINARY_OR("|=", BinaryExpr.Operator.BINARY_OR), + XOR("^=", BinaryExpr.Operator.XOR), + REMAINDER("%=", BinaryExpr.Operator.REMAINDER), + LEFT_SHIFT("<<=", BinaryExpr.Operator.LEFT_SHIFT), + SIGNED_RIGHT_SHIFT(">>=", BinaryExpr.Operator.SIGNED_RIGHT_SHIFT), + UNSIGNED_RIGHT_SHIFT(">>>=", BinaryExpr.Operator.UNSIGNED_RIGHT_SHIFT); private final String codeRepresentation; + private final BinaryExpr.Operator binaryOperatorEquivalent; - Operator(String codeRepresentation) { + Operator(String codeRepresentation, BinaryExpr.Operator binaryOperatorEquivalent) { this.codeRepresentation = codeRepresentation; + this.binaryOperatorEquivalent = binaryOperatorEquivalent; } public String asString() { return codeRepresentation; } + + public Optional<BinaryExpr.Operator> toBinaryOperator() { + return Optional.ofNullable(binaryOperatorEquivalent); + } } private Expression target; diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/BinaryExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/BinaryExpr.java index 5ad85aaed..0f09bf2d7 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/BinaryExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/BinaryExpr.java @@ -47,35 +47,41 @@ public final class BinaryExpr extends Expression { public enum Operator implements Printable { - OR("||"), - AND("&&"), - BINARY_OR("|"), - BINARY_AND("&"), - XOR("^"), - EQUALS("=="), - NOT_EQUALS("!="), - LESS("<"), - GREATER(">"), - LESS_EQUALS("<="), - GREATER_EQUALS(">="), - LEFT_SHIFT("<<"), - SIGNED_RIGHT_SHIFT(">>"), - UNSIGNED_RIGHT_SHIFT(">>>"), - PLUS("+"), - MINUS("-"), - MULTIPLY("*"), - DIVIDE("/"), - REMAINDER("%"); + OR("||", null), + AND("&&", null), + BINARY_OR("|", AssignExpr.Operator.BINARY_OR), + BINARY_AND("&", AssignExpr.Operator.BINARY_AND), + XOR("^", AssignExpr.Operator.XOR), + EQUALS("==", null), + NOT_EQUALS("!=", null), + LESS("<", null), + GREATER(">", null), + LESS_EQUALS("<=", null), + GREATER_EQUALS(">=", null), + LEFT_SHIFT("<<", AssignExpr.Operator.LEFT_SHIFT), + SIGNED_RIGHT_SHIFT(">>", AssignExpr.Operator.SIGNED_RIGHT_SHIFT), + UNSIGNED_RIGHT_SHIFT(">>>", AssignExpr.Operator.UNSIGNED_RIGHT_SHIFT), + PLUS("+", AssignExpr.Operator.PLUS), + MINUS("-", AssignExpr.Operator.MINUS), + MULTIPLY("*", AssignExpr.Operator.MULTIPLY), + DIVIDE("/", AssignExpr.Operator.DIVIDE), + REMAINDER("%", AssignExpr.Operator.REMAINDER); private final String codeRepresentation; + private final AssignExpr.Operator assignOperatorEquivalent; - Operator(String codeRepresentation) { + Operator(String codeRepresentation, AssignExpr.Operator assignOperatorEquivalent) { this.codeRepresentation = codeRepresentation; + this.assignOperatorEquivalent = assignOperatorEquivalent; } public String asString() { return codeRepresentation; } + + public Optional<AssignExpr.Operator> toAssignOperator() { + return Optional.ofNullable(assignOperatorEquivalent); + } } private Expression left; |