Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.xtend.middleend.xpand/src/org/eclipse/xtend/middleend/xpand/internal/OldDefinitionConverter.java')
-rw-r--r--plugins/org.eclipse.xtend.middleend.xpand/src/org/eclipse/xtend/middleend/xpand/internal/OldDefinitionConverter.java23
1 files changed, 6 insertions, 17 deletions
diff --git a/plugins/org.eclipse.xtend.middleend.xpand/src/org/eclipse/xtend/middleend/xpand/internal/OldDefinitionConverter.java b/plugins/org.eclipse.xtend.middleend.xpand/src/org/eclipse/xtend/middleend/xpand/internal/OldDefinitionConverter.java
index 1710e403..23500de3 100644
--- a/plugins/org.eclipse.xtend.middleend.xpand/src/org/eclipse/xtend/middleend/xpand/internal/OldDefinitionConverter.java
+++ b/plugins/org.eclipse.xtend.middleend.xpand/src/org/eclipse/xtend/middleend/xpand/internal/OldDefinitionConverter.java
@@ -40,7 +40,6 @@ import org.eclipse.xtend.backend.aop.AroundAdvice;
import org.eclipse.xtend.backend.common.BackendType;
import org.eclipse.xtend.backend.common.ExpressionBase;
import org.eclipse.xtend.backend.common.Function;
-import org.eclipse.xtend.backend.common.FunctionDefContext;
import org.eclipse.xtend.backend.common.NamedFunction;
import org.eclipse.xtend.backend.common.SourcePos;
import org.eclipse.xtend.backend.common.SyntaxConstants;
@@ -53,7 +52,6 @@ import org.eclipse.xtend.backend.expr.LiteralExpression;
import org.eclipse.xtend.backend.expr.LocalVarEvalExpression;
import org.eclipse.xtend.backend.expr.NewLocalVarDefExpression;
import org.eclipse.xtend.backend.expr.SequenceExpression;
-import org.eclipse.xtend.backend.functions.FunctionDefContextInternal;
import org.eclipse.xtend.backend.functions.SourceDefinedFunction;
import org.eclipse.xtend.backend.syslib.FileIoOperations;
import org.eclipse.xtend.backend.syslib.SysLibNames;
@@ -92,7 +90,7 @@ public final class OldDefinitionConverter {
}
- public AroundAdvice create (Advice a, Set<XpandDefinitionName> referencedDefinitions, FunctionDefContext fdc) {
+ public AroundAdvice create (Advice a, Set<XpandDefinitionName> referencedDefinitions) {
final XpandExecutionContext oldCtx = _ctx;
try {
@@ -106,33 +104,24 @@ public final class OldDefinitionConverter {
_ctx = (XpandExecutionContext) _ctx.cloneWithVariable (new Variable (localVarNames.get(i), localVarTypes.get(i)));
final ExpressionBase body = convertStatementSequence (a.getBody(), a, referencedDefinitions);
- return exprConv.convertAdvice (body, a.getName(), Arrays.asList (a.getParams()), a.isWildcardParams(), fdc);
+ return exprConv.convertAdvice (body, a.getName(), Arrays.asList (a.getParams()), a.isWildcardParams());
}
finally {
_ctx = oldCtx;
}
}
- /**
- * converts an extension to a function, taking care of mutual registration with its fdc
- */
- public NamedFunction create (XpandDefinition def, FunctionDefContextInternal fdc, Set<XpandDefinitionName> referencedDefinitions) {
- final NamedFunction result = createUnregistered (def, fdc, referencedDefinitions);
- fdc.register (result, true);
- return result;
- }
-
- private NamedFunction createUnregistered (XpandDefinition def, FunctionDefContextInternal fdc, Set<XpandDefinitionName> referencedDefinitions) {
+ public NamedFunction createUnregistered (XpandDefinition def, Set<XpandDefinitionName> referencedDefinitions) {
if (def instanceof Definition) {
final String canonicalName = new XpandDefinitionName (def).getCanonicalDefinitionName();
- return new NamedFunction (canonicalName, createNormalDefinition ((Definition) def, fdc, referencedDefinitions));
+ return new NamedFunction (canonicalName, createNormalDefinition ((Definition) def, referencedDefinitions));
}
throw new IllegalArgumentException ("unsupported definition type " + def.getClass().getName());
}
- private Function createNormalDefinition (Definition def, FunctionDefContext fdc, Set<XpandDefinitionName> referencedDefinitions) {
+ private Function createNormalDefinition (Definition def, Set<XpandDefinitionName> referencedDefinitions) {
final XpandExecutionContext oldCtx = _ctx;
try {
@@ -151,7 +140,7 @@ public final class OldDefinitionConverter {
paramTypes.add (_typeConverter.convertToBackendType (pt));
}
- return new SourceDefinedFunction (def.getName(), paramNames, paramTypes, fdc, convertStatementSequence (def.getBody(), def, referencedDefinitions), false, null);
+ return new SourceDefinedFunction (def.getName(), paramNames, paramTypes, convertStatementSequence (def.getBody(), def, referencedDefinitions), false, null);
}
finally {
_ctx = oldCtx;

Back to the top