aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2023-10-25 22:03:34 +0100
committerMichael Williamson <mike@zwobble.org>2023-10-25 22:03:51 +0100
commit291f1463f2cf23689eb56d7a9bd577f18a949309 (patch)
treeb6e52082b8fd9b683b323fc2fca792c37e99b82c /src/main/java
parent6ce6049bbbfb609cb4d1acde3f4a5549aa3af9fc (diff)
Adding missing suffices to error types
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/org/shedlang/compiler/typechecker/EnvironmentBuilder.java6
-rw-r--r--src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java10
-rw-r--r--src/main/java/org/shedlang/compiler/typechecker/errors/CannotDefineStructOutsideOfNamespaceError.java (renamed from src/main/java/org/shedlang/compiler/typechecker/errors/CannotDefineStructOutsideOfNamespace.java)4
-rw-r--r--src/main/java/org/shedlang/compiler/typechecker/errors/CannotDefineSumTypeOutsideOfNamespaceError.java (renamed from src/main/java/org/shedlang/compiler/typechecker/errors/CannotDefineSumTypeOutsideOfNamespace.java)4
-rw-r--r--src/main/java/org/shedlang/compiler/typechecker/errors/CannotReturnOutsideOfFunctionError.java (renamed from src/main/java/org/shedlang/compiler/typechecker/errors/CannotReturnOutsideOfFunction.java)4
-rw-r--r--src/main/java/org/shedlang/compiler/typechecker/errors/DuplicateVariableNameError.java (renamed from src/main/java/org/shedlang/compiler/typechecker/errors/DuplicateVariableName.java)4
-rw-r--r--src/main/java/org/shedlang/compiler/typechecker/errors/TargetTupleHasWrongElementCountError.java (renamed from src/main/java/org/shedlang/compiler/typechecker/errors/TargetTupleHasWrongElementCount.java)4
7 files changed, 18 insertions, 18 deletions
diff --git a/src/main/java/org/shedlang/compiler/typechecker/EnvironmentBuilder.java b/src/main/java/org/shedlang/compiler/typechecker/EnvironmentBuilder.java
index 8e08855c..85292f8c 100644
--- a/src/main/java/org/shedlang/compiler/typechecker/EnvironmentBuilder.java
+++ b/src/main/java/org/shedlang/compiler/typechecker/EnvironmentBuilder.java
@@ -3,7 +3,7 @@ package org.shedlang.compiler.typechecker;
import org.pcollections.Empty;
import org.pcollections.PMap;
import org.shedlang.compiler.sources.Source;
-import org.shedlang.compiler.typechecker.errors.DuplicateVariableName;
+import org.shedlang.compiler.typechecker.errors.DuplicateVariableNameError;
import java.util.List;
@@ -30,14 +30,14 @@ public class EnvironmentBuilder {
public EnvironmentBuilder addUndefined(DeclaredVariable variable) {
if (environment.containsKey(variable.name())) {
- throw new DuplicateVariableName(variable.name(), variable.source());
+ throw new DuplicateVariableNameError(variable.name(), variable.source());
}
return new EnvironmentBuilder(environment.plus(variable.name(), Variable.undefined(variable.variableType())));
}
public EnvironmentBuilder add(String name, Variable variable, Source source) {
if (environment.containsKey(name)) {
- throw new DuplicateVariableName(name, source);
+ throw new DuplicateVariableNameError(name, source);
}
return new EnvironmentBuilder(environment.plus(name, variable));
}
diff --git a/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java b/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java
index d7ad4627..62216226 100644
--- a/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java
+++ b/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java
@@ -577,7 +577,7 @@ public class TypeChecker {
// This should be syntactically impossible, but since we only have
// one context type, we check for this possibility and throw a
// reasonable error.
- return new CannotReturnOutsideOfFunction(untyped.source());
+ return new CannotReturnOutsideOfFunctionError(untyped.source());
});
checkExpressionType(expression, expectedReturnType, context);
@@ -654,7 +654,7 @@ public class TypeChecker {
var seenParamNames = new HashSet<String>();
for (var untypedParamNode : untyped.params().named()) {
if (!seenParamNames.add(untypedParamNode.name())) {
- throw new DuplicateVariableName(
+ throw new DuplicateVariableNameError(
untypedParamNode.name(),
untypedParamNode.source()
);
@@ -950,7 +950,7 @@ public class TypeChecker {
@Override
public TypeCheckerContext declareTypes(TypeCheckerContext context) {
var namespaceName = context.namespaceName()
- .orElseThrow(() -> new CannotDefineStructOutsideOfNamespace(untyped.source()));
+ .orElseThrow(() -> new CannotDefineStructOutsideOfNamespaceError(untyped.source()));
var type = new StructType(namespaceName, untyped.name());
@@ -1005,7 +1005,7 @@ public class TypeChecker {
@Override
public TypeCheckerContext declareTypes(TypeCheckerContext context) {
var namespaceName = context.namespaceName()
- .orElseThrow(() -> new CannotDefineSumTypeOutsideOfNamespace(untyped.source()));
+ .orElseThrow(() -> new CannotDefineSumTypeOutsideOfNamespaceError(untyped.source()));
var type = new SumType(namespaceName, untyped.name());
@@ -1199,7 +1199,7 @@ public class TypeChecker {
}
if (targetTuple.elements().size() != tupleType.elements().size()) {
- throw new TargetTupleHasWrongElementCount(
+ throw new TargetTupleHasWrongElementCountError(
tupleType.elements().size(),
targetTuple.elements().size(),
targetTuple.source()
diff --git a/src/main/java/org/shedlang/compiler/typechecker/errors/CannotDefineStructOutsideOfNamespace.java b/src/main/java/org/shedlang/compiler/typechecker/errors/CannotDefineStructOutsideOfNamespaceError.java
index 6e8810eb..2ac8a386 100644
--- a/src/main/java/org/shedlang/compiler/typechecker/errors/CannotDefineStructOutsideOfNamespace.java
+++ b/src/main/java/org/shedlang/compiler/typechecker/errors/CannotDefineStructOutsideOfNamespaceError.java
@@ -3,8 +3,8 @@ package org.shedlang.compiler.typechecker.errors;
import org.shedlang.compiler.errors.InternalCompilerError;
import org.shedlang.compiler.sources.Source;
-public class CannotDefineStructOutsideOfNamespace extends InternalCompilerError {
- public CannotDefineStructOutsideOfNamespace(Source source) {
+public class CannotDefineStructOutsideOfNamespaceError extends InternalCompilerError {
+ public CannotDefineStructOutsideOfNamespaceError(Source source) {
super("Cannot define struct outside of namespace", source);
}
}
diff --git a/src/main/java/org/shedlang/compiler/typechecker/errors/CannotDefineSumTypeOutsideOfNamespace.java b/src/main/java/org/shedlang/compiler/typechecker/errors/CannotDefineSumTypeOutsideOfNamespaceError.java
index d3f9c48c..5d5505e1 100644
--- a/src/main/java/org/shedlang/compiler/typechecker/errors/CannotDefineSumTypeOutsideOfNamespace.java
+++ b/src/main/java/org/shedlang/compiler/typechecker/errors/CannotDefineSumTypeOutsideOfNamespaceError.java
@@ -3,8 +3,8 @@ package org.shedlang.compiler.typechecker.errors;
import org.shedlang.compiler.errors.InternalCompilerError;
import org.shedlang.compiler.sources.Source;
-public class CannotDefineSumTypeOutsideOfNamespace extends InternalCompilerError {
- public CannotDefineSumTypeOutsideOfNamespace(Source source) {
+public class CannotDefineSumTypeOutsideOfNamespaceError extends InternalCompilerError {
+ public CannotDefineSumTypeOutsideOfNamespaceError(Source source) {
super("Cannot define sum type outside of namespace", source);
}
}
diff --git a/src/main/java/org/shedlang/compiler/typechecker/errors/CannotReturnOutsideOfFunction.java b/src/main/java/org/shedlang/compiler/typechecker/errors/CannotReturnOutsideOfFunctionError.java
index 8b4a3c18..b3ce6eb4 100644
--- a/src/main/java/org/shedlang/compiler/typechecker/errors/CannotReturnOutsideOfFunction.java
+++ b/src/main/java/org/shedlang/compiler/typechecker/errors/CannotReturnOutsideOfFunctionError.java
@@ -3,8 +3,8 @@ package org.shedlang.compiler.typechecker.errors;
import org.shedlang.compiler.errors.SourceError;
import org.shedlang.compiler.sources.Source;
-public class CannotReturnOutsideOfFunction extends SourceError {
- public CannotReturnOutsideOfFunction(Source source) {
+public class CannotReturnOutsideOfFunctionError extends SourceError {
+ public CannotReturnOutsideOfFunctionError(Source source) {
super("Cannot return outside of function", source);
}
}
diff --git a/src/main/java/org/shedlang/compiler/typechecker/errors/DuplicateVariableName.java b/src/main/java/org/shedlang/compiler/typechecker/errors/DuplicateVariableNameError.java
index 21771987..b21e1d98 100644
--- a/src/main/java/org/shedlang/compiler/typechecker/errors/DuplicateVariableName.java
+++ b/src/main/java/org/shedlang/compiler/typechecker/errors/DuplicateVariableNameError.java
@@ -3,10 +3,10 @@ package org.shedlang.compiler.typechecker.errors;
import org.shedlang.compiler.errors.SourceError;
import org.shedlang.compiler.sources.Source;
-public class DuplicateVariableName extends SourceError {
+public class DuplicateVariableNameError extends SourceError {
private final String variableName;
- public DuplicateVariableName(String variableName, Source source) {
+ public DuplicateVariableNameError(String variableName, Source source) {
super("Duplicate variable name: " + variableName, source);
this.variableName = variableName;
}
diff --git a/src/main/java/org/shedlang/compiler/typechecker/errors/TargetTupleHasWrongElementCount.java b/src/main/java/org/shedlang/compiler/typechecker/errors/TargetTupleHasWrongElementCountError.java
index da2d6ba9..48296e20 100644
--- a/src/main/java/org/shedlang/compiler/typechecker/errors/TargetTupleHasWrongElementCount.java
+++ b/src/main/java/org/shedlang/compiler/typechecker/errors/TargetTupleHasWrongElementCountError.java
@@ -3,11 +3,11 @@ package org.shedlang.compiler.typechecker.errors;
import org.shedlang.compiler.errors.SourceError;
import org.shedlang.compiler.sources.Source;
-public class TargetTupleHasWrongElementCount extends SourceError {
+public class TargetTupleHasWrongElementCountError extends SourceError {
private final int expression;
private final int target;
- public TargetTupleHasWrongElementCount(int expression, int target, Source source) {
+ public TargetTupleHasWrongElementCountError(int expression, int target, Source source) {
super("Expression has " + expression + " elements, but target has " + target + " elements", source);
this.expression = expression;
this.target = target;