diff options
Diffstat (limited to 'src/main/java')
| -rw-r--r-- | src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java b/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java index ed658460..61e7eb9d 100644 --- a/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java +++ b/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java @@ -2119,18 +2119,25 @@ public class TypeChecker { return context.toResult(typed); } + static TypeParam typeCheckTypeLevelParam( + UntypedTypeLevelParamNode untyped, + Scope scope + ) { + return new TypeParam( + scope, + untyped.name() + ); + } + + private static List<TypeParam> typeCheckTypeLevelParams( List<UntypedTypeLevelParamNode> typeLevelParamNodes, Scope scope ) { return typeLevelParamNodes.stream() - .map(typeLevelParamNode -> new TypeParam( - scope, - typeLevelParamNode.name() - )) + .map(typeLevelParamNode -> typeCheckTypeLevelParam(typeLevelParamNode, scope)) .toList(); } - private static TypeCheckerResult<TypedExpressionNode> typeCheckUnitLiteral( UntypedUnitLiteralNode untyped, TypeCheckerContext context |
