aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2026-07-31 09:23:21 +0100
committerMichael Williamson <mike@zwobble.org>2026-07-31 09:23:21 +0100
commitc99d9dec1c89a09fd4ba6f7f73a94bf5b29ee7f0 (patch)
tree95a51190c2d97b73c27bfa8a6898ca185c182d52
parentd3dee95a3b8744668d6c0b6fe26cc14d3b1d1a87 (diff)
Make Source a sealed interface
-rw-r--r--src/main/java/org/shedlang/compiler/sources/NullSource.java2
-rw-r--r--src/main/java/org/shedlang/compiler/sources/RuntimeSource.java2
-rw-r--r--src/main/java/org/shedlang/compiler/sources/Source.java2
3 files changed, 3 insertions, 3 deletions
diff --git a/src/main/java/org/shedlang/compiler/sources/NullSource.java b/src/main/java/org/shedlang/compiler/sources/NullSource.java
index 6a66aeea..fbac0ea0 100644
--- a/src/main/java/org/shedlang/compiler/sources/NullSource.java
+++ b/src/main/java/org/shedlang/compiler/sources/NullSource.java
@@ -1,6 +1,6 @@
package org.shedlang.compiler.sources;
-public class NullSource implements Source {
+public final class NullSource implements Source {
private NullSource() {
}
diff --git a/src/main/java/org/shedlang/compiler/sources/RuntimeSource.java b/src/main/java/org/shedlang/compiler/sources/RuntimeSource.java
index 6bb708f9..749b84e3 100644
--- a/src/main/java/org/shedlang/compiler/sources/RuntimeSource.java
+++ b/src/main/java/org/shedlang/compiler/sources/RuntimeSource.java
@@ -1,6 +1,6 @@
package org.shedlang.compiler.sources;
-public class RuntimeSource implements Source {
+public final class RuntimeSource implements Source {
private RuntimeSource() {
}
diff --git a/src/main/java/org/shedlang/compiler/sources/Source.java b/src/main/java/org/shedlang/compiler/sources/Source.java
index edd9ad88..aeae447f 100644
--- a/src/main/java/org/shedlang/compiler/sources/Source.java
+++ b/src/main/java/org/shedlang/compiler/sources/Source.java
@@ -1,5 +1,5 @@
package org.shedlang.compiler.sources;
-public interface Source {
+public sealed interface Source permits FileFragmentSource, NullSource, RuntimeSource {
String describe();
}