From f89273cc65a2abfeae7ea58b37424e066b9f81b3 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Wed, 30 Mar 2016 19:58:38 +0100 Subject: Correct name of Python arrays to lists --- .../backends/python/PythonCodeGenerator.java | 4 +-- .../couscous/backends/python/PythonSerializer.java | 4 +-- .../backends/python/ast/PythonArrayNode.java | 31 ---------------------- .../backends/python/ast/PythonListNode.java | 31 ++++++++++++++++++++++ .../python/ast/visitors/PythonNodeVisitor.java | 2 +- .../backends/python/PythonCodeGeneratorTests.java | 4 +-- .../backends/python/PythonSerializerTests.java | 8 +++--- 7 files changed, 42 insertions(+), 42 deletions(-) delete mode 100644 src/main/java/org/zwobble/couscous/backends/python/ast/PythonArrayNode.java create mode 100644 src/main/java/org/zwobble/couscous/backends/python/ast/PythonListNode.java diff --git a/src/main/java/org/zwobble/couscous/backends/python/PythonCodeGenerator.java b/src/main/java/org/zwobble/couscous/backends/python/PythonCodeGenerator.java index 9aa679a..693a06b 100644 --- a/src/main/java/org/zwobble/couscous/backends/python/PythonCodeGenerator.java +++ b/src/main/java/org/zwobble/couscous/backends/python/PythonCodeGenerator.java @@ -23,7 +23,7 @@ import java.util.stream.Stream; import static com.google.common.collect.Iterables.filter; import static com.google.common.collect.Iterables.transform; import static com.google.common.collect.Iterators.singletonIterator; -import static org.zwobble.couscous.backends.python.ast.PythonArrayNode.pythonArray; +import static org.zwobble.couscous.backends.python.ast.PythonListNode.pythonList; import static org.zwobble.couscous.types.Types.erasure; import static org.zwobble.couscous.backends.python.ast.PythonAssignmentNode.pythonAssignment; import static org.zwobble.couscous.backends.python.ast.PythonAttributeAccessNode.pythonAttributeAccess; @@ -254,7 +254,7 @@ public class PythonCodeGenerator { @Override public PythonExpressionNode visit(ArrayNode array) { - return pythonArray(eagerMap( + return pythonList(eagerMap( array.getElements(), PythonCodeGenerator::generateExpression)); } diff --git a/src/main/java/org/zwobble/couscous/backends/python/PythonSerializer.java b/src/main/java/org/zwobble/couscous/backends/python/PythonSerializer.java index 0a7735d..668b6f7 100644 --- a/src/main/java/org/zwobble/couscous/backends/python/PythonSerializer.java +++ b/src/main/java/org/zwobble/couscous/backends/python/PythonSerializer.java @@ -48,10 +48,10 @@ public class PythonSerializer implements PythonNodeVisitor { } @Override - public void visit(PythonArrayNode array) { + public void visit(PythonListNode list) { writer.writeSymbol("["); writer.writeWithSeparator( - array.getElements(), + list.getElements(), element -> write(element), () -> { writer.writeSymbol(","); diff --git a/src/main/java/org/zwobble/couscous/backends/python/ast/PythonArrayNode.java b/src/main/java/org/zwobble/couscous/backends/python/ast/PythonArrayNode.java deleted file mode 100644 index 91588ea..0000000 --- a/src/main/java/org/zwobble/couscous/backends/python/ast/PythonArrayNode.java +++ /dev/null @@ -1,31 +0,0 @@ -package org.zwobble.couscous.backends.python.ast; - -import org.zwobble.couscous.backends.python.ast.visitors.PythonNodeVisitor; - -import java.util.List; - -public class PythonArrayNode implements PythonExpressionNode { - public static PythonExpressionNode pythonArray(List elements) { - return new PythonArrayNode(elements); - } - - private final List elements; - - public PythonArrayNode(List elements) { - this.elements = elements; - } - - public List getElements() { - return elements; - } - - @Override - public int precedence() { - return Integer.MAX_VALUE; - } - - @Override - public void accept(PythonNodeVisitor visitor) { - visitor.visit(this); - } -} diff --git a/src/main/java/org/zwobble/couscous/backends/python/ast/PythonListNode.java b/src/main/java/org/zwobble/couscous/backends/python/ast/PythonListNode.java new file mode 100644 index 0000000..ee00023 --- /dev/null +++ b/src/main/java/org/zwobble/couscous/backends/python/ast/PythonListNode.java @@ -0,0 +1,31 @@ +package org.zwobble.couscous.backends.python.ast; + +import org.zwobble.couscous.backends.python.ast.visitors.PythonNodeVisitor; + +import java.util.List; + +public class PythonListNode implements PythonExpressionNode { + public static PythonExpressionNode pythonList(List elements) { + return new PythonListNode(elements); + } + + private final List elements; + + public PythonListNode(List elements) { + this.elements = elements; + } + + public List getElements() { + return elements; + } + + @Override + public int precedence() { + return Integer.MAX_VALUE; + } + + @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 bcc8604..c585e8c 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 @@ -7,7 +7,7 @@ public interface PythonNodeVisitor { void visit(PythonStringLiteralNode stringLiteral); void visit(PythonBooleanLiteralNode booleanLiteral); void visit(PythonVariableReferenceNode reference); - void visit(PythonArrayNode array); + void visit(PythonListNode list); void visit(PythonConditionalExpressionNode conditional); void visit(PythonAttributeAccessNode attributeAccess); void visit(PythonCallNode call); diff --git a/src/test/java/org/zwobble/couscous/tests/backends/python/PythonCodeGeneratorTests.java b/src/test/java/org/zwobble/couscous/tests/backends/python/PythonCodeGeneratorTests.java index 1b043bc..98d2e20 100644 --- a/src/test/java/org/zwobble/couscous/tests/backends/python/PythonCodeGeneratorTests.java +++ b/src/test/java/org/zwobble/couscous/tests/backends/python/PythonCodeGeneratorTests.java @@ -4,7 +4,7 @@ import org.hamcrest.FeatureMatcher; import org.hamcrest.Matcher; import org.junit.Test; import org.zwobble.couscous.backends.python.PythonCodeGenerator; -import org.zwobble.couscous.backends.python.ast.PythonArrayNode; +import org.zwobble.couscous.backends.python.ast.PythonListNode; import org.zwobble.couscous.backends.python.ast.PythonExpressionNode; import org.zwobble.couscous.backends.python.ast.PythonStringLiteralNode; import org.zwobble.couscous.types.Types; @@ -42,7 +42,7 @@ public class PythonCodeGeneratorTests { private static Matcher isPythonList( List> expectedElements) { - return isA(PythonArrayNode.class, hasFeature( + return isA(PythonListNode.class, hasFeature( "elements", list -> list.getElements(), contains(expectedElements))); diff --git a/src/test/java/org/zwobble/couscous/tests/backends/python/PythonSerializerTests.java b/src/test/java/org/zwobble/couscous/tests/backends/python/PythonSerializerTests.java index 98b2eed..23787a4 100644 --- a/src/test/java/org/zwobble/couscous/tests/backends/python/PythonSerializerTests.java +++ b/src/test/java/org/zwobble/couscous/tests/backends/python/PythonSerializerTests.java @@ -7,7 +7,7 @@ import org.zwobble.couscous.backends.python.ast.PythonModuleNode; import static org.junit.Assert.assertEquals; import static org.zwobble.couscous.backends.python.PythonSerializer.serialize; -import static org.zwobble.couscous.backends.python.ast.PythonArrayNode.pythonArray; +import static org.zwobble.couscous.backends.python.ast.PythonListNode.pythonList; import static org.zwobble.couscous.backends.python.ast.PythonAssignmentNode.pythonAssignment; import static org.zwobble.couscous.backends.python.ast.PythonAttributeAccessNode.pythonAttributeAccess; import static org.zwobble.couscous.backends.python.ast.PythonBinaryOperation.pythonAnd; @@ -61,11 +61,11 @@ public class PythonSerializerTests { @Test public void elementsOfArrayAreSerialised() { - assertEquals("[]", serialize(pythonArray(list()))); - assertEquals("[one]", serialize(pythonArray(list(pythonVariableReference("one"))))); + assertEquals("[]", serialize(pythonList(list()))); + assertEquals("[one]", serialize(pythonList(list(pythonVariableReference("one"))))); assertEquals( "[one, two]", - serialize(pythonArray(list( + serialize(pythonList(list( pythonVariableReference("one"), pythonVariableReference("two"))))); } -- cgit v1.2.3