aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/backends/python/ast
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2015-10-31 13:42:14 +0000
committerMichael Williamson <mike@zwobble.org>2015-10-31 13:42:14 +0000
commiteff6ead0d0089fae070c6dbb7c937353632322c1 (patch)
treef90ad6ebd4a6c25b234c8a116911c2f36dc0a551 /src/main/java/org/zwobble/couscous/backends/python/ast
parentc69e902235ea6a197c197c786c88f2bd15f10de3 (diff)
Support int inequality
Diffstat (limited to 'src/main/java/org/zwobble/couscous/backends/python/ast')
-rw-r--r--src/main/java/org/zwobble/couscous/backends/python/ast/PythonNotNode.java24
-rw-r--r--src/main/java/org/zwobble/couscous/backends/python/ast/visitors/PythonNodeVisitor.java2
2 files changed, 26 insertions, 0 deletions
diff --git a/src/main/java/org/zwobble/couscous/backends/python/ast/PythonNotNode.java b/src/main/java/org/zwobble/couscous/backends/python/ast/PythonNotNode.java
new file mode 100644
index 0000000..6fe7dc6
--- /dev/null
+++ b/src/main/java/org/zwobble/couscous/backends/python/ast/PythonNotNode.java
@@ -0,0 +1,24 @@
+package org.zwobble.couscous.backends.python.ast;
+
+import org.zwobble.couscous.backends.python.ast.visitors.PythonNodeVisitor;
+
+public class PythonNotNode implements PythonExpressionNode {
+ public static PythonExpressionNode pythonNot(PythonExpressionNode operand) {
+ return new PythonNotNode(operand);
+ }
+
+ private final PythonExpressionNode operand;
+
+ private PythonNotNode(PythonExpressionNode operand) {
+ this.operand = operand;
+ }
+
+ public PythonExpressionNode getOperand() {
+ return operand;
+ }
+
+ @Override
+ public void accept(PythonNodeVisitor visitor) {
+ visitor.visit(this);
+ }
+}
diff --git a/src/main/java/org/zwobble/couscous/backends/python/ast/visitors/PythonNodeVisitor.java b/src/main/java/org/zwobble/couscous/backends/python/ast/visitors/PythonNodeVisitor.java
index 7632342..59a1fe9 100644
--- a/src/main/java/org/zwobble/couscous/backends/python/ast/visitors/PythonNodeVisitor.java
+++ b/src/main/java/org/zwobble/couscous/backends/python/ast/visitors/PythonNodeVisitor.java
@@ -11,6 +11,7 @@ import org.zwobble.couscous.backends.python.ast.PythonGetSliceNode;
import org.zwobble.couscous.backends.python.ast.PythonImportNode;
import org.zwobble.couscous.backends.python.ast.PythonIntegerLiteralNode;
import org.zwobble.couscous.backends.python.ast.PythonModuleNode;
+import org.zwobble.couscous.backends.python.ast.PythonNotNode;
import org.zwobble.couscous.backends.python.ast.PythonPassNode;
import org.zwobble.couscous.backends.python.ast.PythonReturnNode;
import org.zwobble.couscous.backends.python.ast.PythonStringLiteralNode;
@@ -25,6 +26,7 @@ public interface PythonNodeVisitor {
void visit(PythonAttributeAccessNode attributeAccess);
void visit(PythonCallNode call);
void visit(PythonGetSliceNode getSlice);
+ void visit(PythonNotNode notOperation);
void visit(PythonReturnNode pythonReturn);
void visit(PythonPassNode pass);