diff options
author | bkolb | 2008-03-04 15:42:47 +0000 |
---|---|---|
committer | bkolb | 2008-03-04 15:42:47 +0000 |
commit | d1ad1ec9f6e2d1f11dbc9b1d00afb766571defae (patch) | |
tree | 2086133f826f24d6d615394b33002aa2a3be48af | |
parent | 8a991f25bd196a70571bc98f4d49b20a0ad72448 (diff) | |
download | org.eclipse.xpand-d1ad1ec9f6e2d1f11dbc9b1d00afb766571defae.tar.gz org.eclipse.xpand-d1ad1ec9f6e2d1f11dbc9b1d00afb766571defae.tar.xz org.eclipse.xpand-d1ad1ec9f6e2d1f11dbc9b1d00afb766571defae.zip |
sven will den haben
-rw-r--r-- | plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/AnalyzeContext.java | 38 |
1 files changed, 36 insertions, 2 deletions
diff --git a/plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/AnalyzeContext.java b/plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/AnalyzeContext.java index e1f5b52c..ad701c33 100644 --- a/plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/AnalyzeContext.java +++ b/plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/AnalyzeContext.java @@ -15,10 +15,44 @@ */ package org.eclipse.xand3.analyzation; +import java.util.Map; + +import org.eclipse.emf.common.util.EList; +import org.eclipse.xpand3.Identifier; +import org.eclipse.xpand3.declaration.AbstractDeclaration; +import org.eclipse.xpand3.declaration.Extension; +import org.eclipse.xpand3.expression.AbstractExpression; +import org.eclipse.xpand3.staticTypesystem.AbstractTypeReference; +import org.eclipse.xpand3.staticTypesystem.FunctionType; + /** * @author Sven Efftinge - * + * @author Bernd Kolb */ public interface AnalyzeContext { - + + String IMPLICIT_VARIABLE = null; + + Map<String, ? extends AbstractTypeReference> getLocalVars(); + + boolean hasThis(); + + Object getThis(); + + AnalyzeContext cloneWithVariable(Identifier eleName, + AbstractTypeReference object); + + AbstractTypeReference getVariable(String varName); + + AbstractExpression getExtensionForTypes(String functionName, + AbstractTypeReference[] paramTypes); + + FunctionType getOperationFor(AbstractTypeReference target, + String functionName, AbstractTypeReference[] withoutFirst); + + AbstractExpression getTypeForName(Identifier typeLiteral); + + Extension findExtension(String expression, + EList<AbstractDeclaration> declarations); + } |