aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/shedlang/compiler/ShedCompiler.java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2025-01-12 15:31:56 +0000
committerMichael Williamson <mike@zwobble.org>2025-01-12 15:31:56 +0000
commit412197836c716df0b649807a1f8150c3ca5f6c2b (patch)
treecf9492fa3e37c0729f4ade5a9e448e99afabe709 /src/main/java/org/shedlang/compiler/ShedCompiler.java
parent027d73dea19c4154d27c77cd82dd4b28649cdf3f (diff)
Handle namespace directories
Diffstat (limited to 'src/main/java/org/shedlang/compiler/ShedCompiler.java')
-rw-r--r--src/main/java/org/shedlang/compiler/ShedCompiler.java7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/main/java/org/shedlang/compiler/ShedCompiler.java b/src/main/java/org/shedlang/compiler/ShedCompiler.java
index 34cdad23..eb27588a 100644
--- a/src/main/java/org/shedlang/compiler/ShedCompiler.java
+++ b/src/main/java/org/shedlang/compiler/ShedCompiler.java
@@ -156,7 +156,12 @@ public class ShedCompiler {
var namespaceNameParts = StreamSupport.stream(sourceRoot.relativize(sourceFilePath).spliterator(), false)
.map(element -> {
var string = element.toString();
- return string.substring(0, string.lastIndexOf('.'));
+ var lastDotIndex = string.lastIndexOf('.');
+ if (lastDotIndex == -1) {
+ return string;
+ } else {
+ return string.substring(0, lastDotIndex);
+ }
})
.toList();
var namespaceName = new NamespaceName(namespaceNameParts);