diff options
| author | Michael Williamson <mike@zwobble.org> | 2016-04-09 14:21:48 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2016-04-09 14:21:59 +0100 |
| commit | 0a550c3bb4e624d76b3876e92a2bd0e235301fba (patch) | |
| tree | ee89fc17f79155f830b3413318cf3c2c76364e2d /src/main/java/org/zwobble/couscous/ast/identifiers/Identifier.java | |
| parent | f005b283a1b1c74c8b98499069e6afcb5e9a9ade (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.java | 50 |
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(); } |
