X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.scl.compiler%2Fsrc%2Forg%2Fsimantics%2Fscl%2Fcompiler%2Felaboration%2Fexpressions%2FASTExpression.java;h=a853dfff6731f9309699b822fce6fec5d3d5999a;hb=refs%2Fchanges%2F37%2F737%2F1;hp=fbc0a79014dcb107c3b17842ef5bbb06fddaac8b;hpb=655590362c7017aff657d1ff30e6c63f03b6dd75;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/expressions/ASTExpression.java b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/expressions/ASTExpression.java index fbc0a7901..a853dfff6 100644 --- a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/expressions/ASTExpression.java +++ b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/expressions/ASTExpression.java @@ -3,7 +3,7 @@ package org.simantics.scl.compiler.elaboration.expressions; import org.simantics.scl.compiler.common.exceptions.InternalCompilerError; import org.simantics.scl.compiler.elaboration.contexts.SimplificationContext; import org.simantics.scl.compiler.elaboration.contexts.TypingContext; -import org.simantics.scl.compiler.internal.elaboration.utils.ExpressionDecorator; +import org.simantics.scl.compiler.errors.Locations; import org.simantics.scl.compiler.types.Type; import org.simantics.scl.compiler.types.exceptions.MatchException; @@ -23,7 +23,6 @@ public abstract class ASTExpression extends SimplifiableExpression { @Override final public void collectFreeVariables(THashSet vars) { throw new InternalCompilerError(getClass().getSimpleName() + " does not support collectFreeVariables."); - } @Override @@ -43,11 +42,6 @@ public abstract class ASTExpression extends SimplifiableExpression { throw new InternalCompilerError(getClass().getSimpleName() + " does not support updateType."); } - @Override - final public Expression decorate(ExpressionDecorator decorator) { - throw new InternalCompilerError(getClass().getSimpleName() + " does not support decorate."); - } - @Override final public void collectEffects(THashSet effects) { throw new InternalCompilerError(getClass().getSimpleName() + " does not support collectEffects."); @@ -58,6 +52,11 @@ public abstract class ASTExpression extends SimplifiableExpression { throw new InternalCompilerError(getClass().getSimpleName() + " does not support accept."); } + @Override + public Expression accept(ExpressionTransformer transformer) { + throw new InternalCompilerError(getClass().getSimpleName() + " does not support accept."); + } + @Override public Expression checkBasicType(TypingContext context, Type requiredType) { throw new InternalCompilerError("Class " + @@ -75,4 +74,10 @@ public abstract class ASTExpression extends SimplifiableExpression { throw new InternalCompilerError("Class " + getClass().getSimpleName() + " does not implement method forVariables."); } + + @Override + public void setLocationDeep(long loc) { + if(location == Locations.NO_LOCATION) + location = loc; + } }