summaryrefslogtreecommitdiffstats
path: root/src/ast/types/FunctionType.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/ast/types/FunctionType.java')
-rw-r--r--src/ast/types/FunctionType.java29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/ast/types/FunctionType.java b/src/ast/types/FunctionType.java
new file mode 100644
index 0000000..5e6adaa
--- /dev/null
+++ b/src/ast/types/FunctionType.java
@@ -0,0 +1,29 @@
+package ast.types;
+
+/**
+ * A Function type.
+ */
+public class FunctionType extends Type {
+
+ private final int paramNumber;
+ private final Type returnType;
+
+ public FunctionType(int paramNumber, Type returnType) {
+ this.paramNumber = paramNumber;
+ this.returnType = returnType;
+ }
+
+ // Return the length of the parameters
+ public int getParamNumber() {
+ return paramNumber;
+ }
+
+ public Type getReturnType() {
+ return returnType;
+ }
+
+ @Override
+ public String toPrint(String prefix) {
+ return prefix + "Function\n";
+ }
+}