X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.scl.compiler%2Fsrc%2Forg%2Fsimantics%2Fscl%2Fcompiler%2Felaboration%2Fexpressions%2Fvisitors%2FCollectFreeVariablesVisitor.java;h=0a380130f561080501f0ce5c33ae4942b2baaa86;hp=04f6791ac32b55aa238bfd109e7803a8f5b67b0e;hb=e28caa5b47179aa0a7e600a1fcecf864175d2cbe;hpb=ce7ffc15e6ebcdb21089ac862aa5af01da89d454 diff --git a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/expressions/visitors/CollectFreeVariablesVisitor.java b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/expressions/visitors/CollectFreeVariablesVisitor.java index 04f6791ac..0a380130f 100644 --- a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/expressions/visitors/CollectFreeVariablesVisitor.java +++ b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/expressions/visitors/CollectFreeVariablesVisitor.java @@ -178,6 +178,13 @@ public class CollectFreeVariablesVisitor extends StandardExpressionVisitor { freeVariables.remove(variable); } + @Override + public void visit(EAsPattern expression) { + if(expression.var != null) + freeVariables.add(expression.var); + expression.pattern.accept(this); + } + public THashSet getFreeVariables() { return freeVariables; }