aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2023-06-13 20:13:13 +0100
committerMichael Williamson <mike@zwobble.org>2023-06-13 20:13:13 +0100
commitb34eddba03641331bdaab43f8938fb16ba2af674 (patch)
treeb35a8b1ba75cf0583d8ddf753a107541a4c950fe /src/main/java
parent47f3094508b59f030cb26d39ac4d2dccdf3414f2 (diff)
Add NamespaceType
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/org/shedlang/compiler/types/NamespaceType.java8
-rw-r--r--src/main/java/org/shedlang/compiler/types/Type.java2
2 files changed, 9 insertions, 1 deletions
diff --git a/src/main/java/org/shedlang/compiler/types/NamespaceType.java b/src/main/java/org/shedlang/compiler/types/NamespaceType.java
new file mode 100644
index 00000000..5c30be21
--- /dev/null
+++ b/src/main/java/org/shedlang/compiler/types/NamespaceType.java
@@ -0,0 +1,8 @@
+package org.shedlang.compiler.types;
+
+public record NamespaceType(NamespaceName namespaceName) implements Type {
+ @Override
+ public String describe() {
+ return namespaceName.toString();
+ }
+}
diff --git a/src/main/java/org/shedlang/compiler/types/Type.java b/src/main/java/org/shedlang/compiler/types/Type.java
index c4d86dda..5cb781a3 100644
--- a/src/main/java/org/shedlang/compiler/types/Type.java
+++ b/src/main/java/org/shedlang/compiler/types/Type.java
@@ -6,5 +6,5 @@ package org.shedlang.compiler.types;
* found through auxiliary data.
*/
public sealed interface Type extends TypeLevelValue
- permits BoolType, FunctionType, IntType, StringType, TypeLevelValueType, UnitType {
+ permits BoolType, FunctionType, IntType, NamespaceType, StringType, TypeLevelValueType, UnitType {
}