From a063cdcec0ecfe449a22f0134dc559a40583fc09 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sat, 6 Feb 2016 17:11:19 +0000 Subject: Move naming code out of Python backend --- src/main/java/org/zwobble/couscous/backends/Names.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 src/main/java/org/zwobble/couscous/backends/Names.java (limited to 'src/main/java/org/zwobble/couscous/backends/Names.java') diff --git a/src/main/java/org/zwobble/couscous/backends/Names.java b/src/main/java/org/zwobble/couscous/backends/Names.java new file mode 100644 index 0000000..fc8072f --- /dev/null +++ b/src/main/java/org/zwobble/couscous/backends/Names.java @@ -0,0 +1,16 @@ +package org.zwobble.couscous.backends; + +import com.google.common.base.Joiner; +import com.google.common.collect.Iterables; +import org.zwobble.couscous.ast.MethodSignature; + +import static com.google.common.collect.Iterables.transform; +import static org.zwobble.couscous.util.ExtraLists.list; + +public class Names { + public static String toUniqueName(MethodSignature signature) { + return Joiner.on("__").join(Iterables.concat( + list(signature.getName()), + transform(signature.getArguments(), argument -> argument.getQualifiedName().replace('.', '_')))); + } +} -- cgit v1.2.3