aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2024-01-12 17:51:59 +0000
committerMichael Williamson <mike@zwobble.org>2024-01-12 17:51:59 +0000
commit298f03e167d4cf3ef5b5088f355c8d8e4ee21467 (patch)
treeb56808f772b6134bdaf2532247c0fec66bece7bc /src/main/java
parent5110da8dcd95fba99b7ce8f5db9a3d80cf358555 (diff)
Handle type level params when substituting in function type
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/org/shedlang/compiler/types/TypeSubstitution.java4
1 files changed, 1 insertions, 3 deletions
diff --git a/src/main/java/org/shedlang/compiler/types/TypeSubstitution.java b/src/main/java/org/shedlang/compiler/types/TypeSubstitution.java
index cc7ddbc9..4b29895c 100644
--- a/src/main/java/org/shedlang/compiler/types/TypeSubstitution.java
+++ b/src/main/java/org/shedlang/compiler/types/TypeSubstitution.java
@@ -1,7 +1,6 @@
package org.shedlang.compiler.types;
import java.util.List;
-import java.util.Optional;
import java.util.function.BiFunction;
public class TypeSubstitution {
@@ -107,8 +106,7 @@ public class TypeSubstitution {
TypeSubstitutionMap map
) {
return new FunctionType(
- // TODO: don't clear type level params
- Optional.empty(),
+ functionType.typeLevelParams(),
functionType.positionalParams().stream()
.map(param -> substituteType(param, map))
.toList(),