aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/ast/identifiers/Identifier.java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2016-04-09 14:21:48 +0100
committerMichael Williamson <mike@zwobble.org>2016-04-09 14:21:59 +0100
commit0a550c3bb4e624d76b3876e92a2bd0e235301fba (patch)
treeee89fc17f79155f830b3413318cf3c2c76364e2d /src/main/java/org/zwobble/couscous/ast/identifiers/Identifier.java
parentf005b283a1b1c74c8b98499069e6afcb5e9a9ade (diff)
Remove MethodTypeParameter and adjust Identifier generation
Diffstat (limited to 'src/main/java/org/zwobble/couscous/ast/identifiers/Identifier.java')
-rw-r--r--src/main/java/org/zwobble/couscous/ast/identifiers/Identifier.java50
1 files changed, 2 insertions, 48 deletions
diff --git a/src/main/java/org/zwobble/couscous/ast/identifiers/Identifier.java b/src/main/java/org/zwobble/couscous/ast/identifiers/Identifier.java
index c753034..777a0bb 100644
--- a/src/main/java/org/zwobble/couscous/ast/identifiers/Identifier.java
+++ b/src/main/java/org/zwobble/couscous/ast/identifiers/Identifier.java
@@ -1,51 +1,5 @@
package org.zwobble.couscous.ast.identifiers;
-import com.google.common.collect.ImmutableList;
-
-import java.util.List;
-
-import static org.zwobble.couscous.util.ExtraLists.list;
-
-public class Identifier {
- // TODO: Should we have two Identifier classes, one for each namespace? (variables and types)
- public static final Identifier TOP = new Identifier(list());
-
- private final List<String> parts;
-
- private Identifier(List<String> parts) {
- this.parts = parts;
- }
-
- public List<String> getParts() {
- return parts;
- }
-
- public Identifier extend(String name) {
- ImmutableList.Builder<String> parts = ImmutableList.builder();
- parts.addAll(this.parts);
- parts.add(name);
- return new Identifier(parts.build());
- }
-
- @Override
- public String toString() {
- return "Identifier(" +
- "parts=" + parts +
- ')';
- }
-
- @Override
- public boolean equals(Object o) {
- if (this == o) return true;
- if (o == null || getClass() != o.getClass()) return false;
-
- Identifier that = (Identifier) o;
-
- return parts.equals(that.parts);
- }
-
- @Override
- public int hashCode() {
- return parts.hashCode();
- }
+public interface Identifier {
+ Iterable<IdentifierPart> getParts();
}