diff options
| author | Michael Williamson <mike@zwobble.org> | 2016-03-31 22:19:02 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2016-03-31 22:19:02 +0100 |
| commit | 9ff78407129e7a1fbc96848ca09a5f28cf7080ed (patch) | |
| tree | f33e3a5c8f8972c756fb980a60ac03f4a98424d3 /src/main/java/org/zwobble/couscous/ast/MethodSignature.java | |
| parent | 63186372abb41771c7a78c34ad3d17c458fa25e1 (diff) | |
Improve generic support in the interpreter
Diffstat (limited to 'src/main/java/org/zwobble/couscous/ast/MethodSignature.java')
| -rw-r--r-- | src/main/java/org/zwobble/couscous/ast/MethodSignature.java | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/main/java/org/zwobble/couscous/ast/MethodSignature.java b/src/main/java/org/zwobble/couscous/ast/MethodSignature.java index 060d2bc..715dade 100644 --- a/src/main/java/org/zwobble/couscous/ast/MethodSignature.java +++ b/src/main/java/org/zwobble/couscous/ast/MethodSignature.java @@ -1,9 +1,12 @@ package org.zwobble.couscous.ast; import org.zwobble.couscous.types.Type; +import org.zwobble.couscous.types.Types; import java.util.List; +import static org.zwobble.couscous.util.ExtraLists.eagerMap; + public class MethodSignature { public static MethodSignature signature(String name, List<Type> arguments, Type returnType) { return new MethodSignature(name, arguments, returnType); @@ -31,6 +34,13 @@ public class MethodSignature { return returnType; } + public MethodSignature generic() { + return new MethodSignature( + name, + eagerMap(arguments, Types::generic), + Types.generic(returnType)); + } + @Override public String toString() { return "MethodSignature(" + |
