summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsefftinge2008-03-04 09:03:38 (EST)
committer sefftinge2008-03-04 09:03:38 (EST)
commit3d1f8975d6a5b36c133c9641d5d3ce85596fe5fa (patch)
tree8fd8ed7ba0ab5c84ac2fdc8b7ddd8fb7802b7cfe
parent806059cdef273e5d4925be43562abcdb5f15b850 (diff)
downloadorg.eclipse.xpand-3d1f8975d6a5b36c133c9641d5d3ce85596fe5fa.zip
org.eclipse.xpand-3d1f8975d6a5b36c133c9641d5d3ce85596fe5fa.tar.gz
org.eclipse.xpand-3d1f8975d6a5b36c133c9641d5d3ce85596fe5fa.tar.bz2
*** empty log message ***
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/AbstractNamedElement.java2
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/AbstractTypeReference.java2
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredFunction.java (renamed from plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredFunction.java)26
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredOperation.java (renamed from plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredOperation.java)38
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredParameter.java53
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredProperty.java53
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredStaticProperty.java53
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredType.java (renamed from plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredType.java)41
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredTypeParameter.java45
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/FunctionType.java4
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/StaticTypesystemFactory.java65
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/StaticTypesystemPackage.java760
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/Type.java4
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/TypeVariable.java3
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/VoidType.java2
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/WildcardType.java2
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclarationFactory.java100
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclarationPackage.java733
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredParameter.java22
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredProperty.java22
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredStaticProperty.java22
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredTypeParameter.java22
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclarationFactoryImpl.java165
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclarationPackageImpl.java441
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredParameterImpl.java45
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredPropertyImpl.java45
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredStaticPropertyImpl.java45
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredTypeParameterImpl.java45
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/util/DeclarationAdapterFactory.java252
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/util/DeclarationSwitch.java280
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/AbstractNamedElementImpl.java2
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/AbstractTypeReferenceImpl.java2
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredFunctionImpl.java (renamed from plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredFunctionImpl.java)60
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredOperationImpl.java (renamed from plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredOperationImpl.java)89
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredParameterImpl.java158
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredPropertyImpl.java158
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredStaticPropertyImpl.java158
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredTypeImpl.java (renamed from plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredTypeImpl.java)90
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredTypeParameterImpl.java133
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/FunctionTypeImpl.java5
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/StaticTypesystemFactoryImpl.java80
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/StaticTypesystemPackageImpl.java341
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/TypeImpl.java5
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/TypeVariableImpl.java5
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/VoidTypeImpl.java2
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/WildcardTypeImpl.java2
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/util/StaticTypesystemAdapterFactory.java128
-rw-r--r--plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/util/StaticTypesystemSwitch.java156
-rw-r--r--plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/RefTest.java44
-rw-r--r--plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/typesystem/DeclarationsContributor.java4
-rw-r--r--plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/typesystem/TypeSystemFacade.java4
-rw-r--r--plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/typesystem/builtin/BuiltinDeclarationsContributor.java150
-rw-r--r--plugins/org.eclipse.xpand3/src/static_typesystem.ecore79
-rw-r--r--plugins/org.eclipse.xpand3/src/static_typesystem.genmodel58
54 files changed, 2761 insertions, 2544 deletions
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/AbstractNamedElement.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/AbstractNamedElement.java
index 170fb9d..0c7e7f3 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/AbstractNamedElement.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/AbstractNamedElement.java
@@ -2,7 +2,7 @@
* <copyright>
* </copyright>
*
- * $Id: AbstractNamedElement.java,v 1.1 2008/03/04 10:53:03 sefftinge Exp $
+ * $Id: AbstractNamedElement.java,v 1.2 2008/03/04 14:03:38 sefftinge Exp $
*/
package org.eclipse.xpand3.staticTypesystem;
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/AbstractTypeReference.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/AbstractTypeReference.java
index b05bc18..b63a6e8 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/AbstractTypeReference.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/AbstractTypeReference.java
@@ -2,7 +2,7 @@
* <copyright>
* </copyright>
*
- * $Id: AbstractTypeReference.java,v 1.1 2008/03/04 10:53:03 sefftinge Exp $
+ * $Id: AbstractTypeReference.java,v 1.2 2008/03/04 14:03:38 sefftinge Exp $
*/
package org.eclipse.xpand3.staticTypesystem;
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredFunction.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredFunction.java
index e7826e7..f6b7abf 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredFunction.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredFunction.java
@@ -2,14 +2,12 @@
* <copyright>
* </copyright>
*
- * $Id: DeclaredFunction.java,v 1.1 2008/03/04 10:52:57 sefftinge Exp $
+ * $Id: DeclaredFunction.java,v 1.1 2008/03/04 14:03:38 sefftinge Exp $
*/
-package org.eclipse.xpand3.staticTypesystem.declaration;
+package org.eclipse.xpand3.staticTypesystem;
import org.eclipse.emf.common.util.EList;
-import org.eclipse.xpand3.staticTypesystem.AbstractNamedElement;
-
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Declared Function</b></em>'.
@@ -18,20 +16,20 @@ import org.eclipse.xpand3.staticTypesystem.AbstractNamedElement;
* <p>
* The following features are supported:
* <ul>
- * <li>{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredFunction#getDeclaredParameters <em>Declared Parameters</em>}</li>
- * <li>{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredFunction#getDeclaredTypeParameters <em>Declared Type Parameters</em>}</li>
- * <li>{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredFunction#getReturnType <em>Return Type</em>}</li>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.DeclaredFunction#getDeclaredParameters <em>Declared Parameters</em>}</li>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.DeclaredFunction#getDeclaredTypeParameters <em>Declared Type Parameters</em>}</li>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.DeclaredFunction#getReturnType <em>Return Type</em>}</li>
* </ul>
* </p>
*
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage#getDeclaredFunction()
+ * @see org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage#getDeclaredFunction()
* @model
* @generated
*/
public interface DeclaredFunction extends AbstractNamedElement {
/**
* Returns the value of the '<em><b>Declared Parameters</b></em>' containment reference list.
- * The list contents are of type {@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredParameter}.
+ * The list contents are of type {@link org.eclipse.xpand3.staticTypesystem.DeclaredParameter}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Declared Parameters</em>' containment reference list isn't clear,
@@ -39,7 +37,7 @@ public interface DeclaredFunction extends AbstractNamedElement {
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Declared Parameters</em>' containment reference list.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage#getDeclaredFunction_DeclaredParameters()
+ * @see org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage#getDeclaredFunction_DeclaredParameters()
* @model containment="true"
* @generated
*/
@@ -47,7 +45,7 @@ public interface DeclaredFunction extends AbstractNamedElement {
/**
* Returns the value of the '<em><b>Declared Type Parameters</b></em>' containment reference list.
- * The list contents are of type {@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredTypeParameter}.
+ * The list contents are of type {@link org.eclipse.xpand3.staticTypesystem.DeclaredTypeParameter}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Declared Type Parameters</em>' containment reference list isn't clear,
@@ -55,7 +53,7 @@ public interface DeclaredFunction extends AbstractNamedElement {
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Declared Type Parameters</em>' containment reference list.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage#getDeclaredFunction_DeclaredTypeParameters()
+ * @see org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage#getDeclaredFunction_DeclaredTypeParameters()
* @model containment="true"
* @generated
*/
@@ -71,14 +69,14 @@ public interface DeclaredFunction extends AbstractNamedElement {
* <!-- end-user-doc -->
* @return the value of the '<em>Return Type</em>' reference.
* @see #setReturnType(DeclaredType)
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage#getDeclaredFunction_ReturnType()
+ * @see org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage#getDeclaredFunction_ReturnType()
* @model
* @generated
*/
DeclaredType getReturnType();
/**
- * Sets the value of the '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredFunction#getReturnType <em>Return Type</em>}' reference.
+ * Sets the value of the '{@link org.eclipse.xpand3.staticTypesystem.DeclaredFunction#getReturnType <em>Return Type</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Return Type</em>' reference.
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredOperation.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredOperation.java
index 338a768..39002a0 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredOperation.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredOperation.java
@@ -2,14 +2,12 @@
* <copyright>
* </copyright>
*
- * $Id: DeclaredOperation.java,v 1.1 2008/03/04 10:52:59 sefftinge Exp $
+ * $Id: DeclaredOperation.java,v 1.1 2008/03/04 14:03:38 sefftinge Exp $
*/
-package org.eclipse.xpand3.staticTypesystem.declaration;
+package org.eclipse.xpand3.staticTypesystem;
import org.eclipse.emf.common.util.EList;
-import org.eclipse.xpand3.staticTypesystem.AbstractNamedElement;
-
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Declared Operation</b></em>'.
@@ -18,20 +16,20 @@ import org.eclipse.xpand3.staticTypesystem.AbstractNamedElement;
* <p>
* The following features are supported:
* <ul>
- * <li>{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredOperation#getDeclaredParameters <em>Declared Parameters</em>}</li>
- * <li>{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredOperation#getDeclaringType <em>Declaring Type</em>}</li>
- * <li>{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredOperation#getReturnType <em>Return Type</em>}</li>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.DeclaredOperation#getDeclaredParameters <em>Declared Parameters</em>}</li>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.DeclaredOperation#getDeclaringType <em>Declaring Type</em>}</li>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.DeclaredOperation#getReturnType <em>Return Type</em>}</li>
* </ul>
* </p>
*
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage#getDeclaredOperation()
+ * @see org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage#getDeclaredOperation()
* @model
* @generated
*/
public interface DeclaredOperation extends AbstractNamedElement {
/**
* Returns the value of the '<em><b>Declared Parameters</b></em>' containment reference list.
- * The list contents are of type {@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredParameter}.
+ * The list contents are of type {@link org.eclipse.xpand3.staticTypesystem.DeclaredParameter}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Declared Parameters</em>' containment reference list isn't clear,
@@ -39,7 +37,7 @@ public interface DeclaredOperation extends AbstractNamedElement {
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Declared Parameters</em>' containment reference list.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage#getDeclaredOperation_DeclaredParameters()
+ * @see org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage#getDeclaredOperation_DeclaredParameters()
* @model containment="true"
* @generated
*/
@@ -47,7 +45,7 @@ public interface DeclaredOperation extends AbstractNamedElement {
/**
* Returns the value of the '<em><b>Declaring Type</b></em>' container reference.
- * It is bidirectional and its opposite is '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType#getOperations <em>Operations</em>}'.
+ * It is bidirectional and its opposite is '{@link org.eclipse.xpand3.staticTypesystem.DeclaredType#getOperations <em>Operations</em>}'.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Declaring Type</em>' container reference isn't clear,
@@ -56,15 +54,15 @@ public interface DeclaredOperation extends AbstractNamedElement {
* <!-- end-user-doc -->
* @return the value of the '<em>Declaring Type</em>' container reference.
* @see #setDeclaringType(DeclaredType)
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage#getDeclaredOperation_DeclaringType()
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType#getOperations
+ * @see org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage#getDeclaredOperation_DeclaringType()
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredType#getOperations
* @model opposite="operations" required="true" transient="false"
* @generated
*/
DeclaredType getDeclaringType();
/**
- * Sets the value of the '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredOperation#getDeclaringType <em>Declaring Type</em>}' container reference.
+ * Sets the value of the '{@link org.eclipse.xpand3.staticTypesystem.DeclaredOperation#getDeclaringType <em>Declaring Type</em>}' container reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Declaring Type</em>' container reference.
@@ -82,21 +80,21 @@ public interface DeclaredOperation extends AbstractNamedElement {
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Return Type</em>' reference.
- * @see #setReturnType(DeclaredType)
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage#getDeclaredOperation_ReturnType()
- * @model
+ * @see #setReturnType(AbstractTypeReference)
+ * @see org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage#getDeclaredOperation_ReturnType()
+ * @model required="true"
* @generated
*/
- DeclaredType getReturnType();
+ AbstractTypeReference getReturnType();
/**
- * Sets the value of the '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredOperation#getReturnType <em>Return Type</em>}' reference.
+ * Sets the value of the '{@link org.eclipse.xpand3.staticTypesystem.DeclaredOperation#getReturnType <em>Return Type</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Return Type</em>' reference.
* @see #getReturnType()
* @generated
*/
- void setReturnType(DeclaredType value);
+ void setReturnType(AbstractTypeReference value);
} // DeclaredOperation
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredParameter.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredParameter.java
new file mode 100644
index 0000000..da22420
--- /dev/null
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredParameter.java
@@ -0,0 +1,53 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id: DeclaredParameter.java,v 1.1 2008/03/04 14:03:38 sefftinge Exp $
+ */
+package org.eclipse.xpand3.staticTypesystem;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Declared Parameter</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.DeclaredParameter#getType <em>Type</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage#getDeclaredParameter()
+ * @model
+ * @generated
+ */
+public interface DeclaredParameter extends AbstractNamedElement {
+
+ /**
+ * Returns the value of the '<em><b>Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Type</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Type</em>' reference.
+ * @see #setType(AbstractTypeReference)
+ * @see org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage#getDeclaredParameter_Type()
+ * @model required="true"
+ * @generated
+ */
+ AbstractTypeReference getType();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.xpand3.staticTypesystem.DeclaredParameter#getType <em>Type</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Type</em>' reference.
+ * @see #getType()
+ * @generated
+ */
+ void setType(AbstractTypeReference value);
+} // DeclaredParameter
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredProperty.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredProperty.java
new file mode 100644
index 0000000..c351d97
--- /dev/null
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredProperty.java
@@ -0,0 +1,53 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id: DeclaredProperty.java,v 1.1 2008/03/04 14:03:38 sefftinge Exp $
+ */
+package org.eclipse.xpand3.staticTypesystem;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Declared Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.DeclaredProperty#getType <em>Type</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage#getDeclaredProperty()
+ * @model
+ * @generated
+ */
+public interface DeclaredProperty extends AbstractNamedElement {
+
+ /**
+ * Returns the value of the '<em><b>Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Type</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Type</em>' reference.
+ * @see #setType(AbstractTypeReference)
+ * @see org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage#getDeclaredProperty_Type()
+ * @model required="true"
+ * @generated
+ */
+ AbstractTypeReference getType();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.xpand3.staticTypesystem.DeclaredProperty#getType <em>Type</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Type</em>' reference.
+ * @see #getType()
+ * @generated
+ */
+ void setType(AbstractTypeReference value);
+} // DeclaredProperty
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredStaticProperty.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredStaticProperty.java
new file mode 100644
index 0000000..265e76a
--- /dev/null
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredStaticProperty.java
@@ -0,0 +1,53 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id: DeclaredStaticProperty.java,v 1.1 2008/03/04 14:03:38 sefftinge Exp $
+ */
+package org.eclipse.xpand3.staticTypesystem;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Declared Static Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.DeclaredStaticProperty#getType <em>Type</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage#getDeclaredStaticProperty()
+ * @model
+ * @generated
+ */
+public interface DeclaredStaticProperty extends AbstractNamedElement {
+
+ /**
+ * Returns the value of the '<em><b>Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Type</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Type</em>' reference.
+ * @see #setType(Type)
+ * @see org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage#getDeclaredStaticProperty_Type()
+ * @model required="true"
+ * @generated
+ */
+ Type getType();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.xpand3.staticTypesystem.DeclaredStaticProperty#getType <em>Type</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Type</em>' reference.
+ * @see #getType()
+ * @generated
+ */
+ void setType(Type value);
+} // DeclaredStaticProperty
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredType.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredType.java
index 6753def..1513943 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredType.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredType.java
@@ -2,13 +2,12 @@
* <copyright>
* </copyright>
*
- * $Id: DeclaredType.java,v 1.2 2008/03/04 11:00:30 sefftinge Exp $
+ * $Id: DeclaredType.java,v 1.1 2008/03/04 14:03:38 sefftinge Exp $
*/
-package org.eclipse.xpand3.staticTypesystem.declaration;
+package org.eclipse.xpand3.staticTypesystem;
import org.eclipse.emf.common.util.EList;
-import org.eclipse.xpand3.staticTypesystem.AbstractNamedElement;
import org.eclipse.xtend.backend.common.BackendType;
/**
@@ -19,22 +18,22 @@ import org.eclipse.xtend.backend.common.BackendType;
* <p>
* The following features are supported:
* <ul>
- * <li>{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType#getStaticProperties <em>Static Properties</em>}</li>
- * <li>{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType#getProperties <em>Properties</em>}</li>
- * <li>{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType#getOperations <em>Operations</em>}</li>
- * <li>{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType#getDeclaredTypeParameters <em>Declared Type Parameters</em>}</li>
- * <li>{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType#getBackendType <em>Backend Type</em>}</li>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.DeclaredType#getStaticProperties <em>Static Properties</em>}</li>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.DeclaredType#getProperties <em>Properties</em>}</li>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.DeclaredType#getOperations <em>Operations</em>}</li>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.DeclaredType#getDeclaredTypeParameters <em>Declared Type Parameters</em>}</li>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.DeclaredType#getBackendType <em>Backend Type</em>}</li>
* </ul>
* </p>
*
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage#getDeclaredType()
+ * @see org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage#getDeclaredType()
* @model
* @generated
*/
public interface DeclaredType extends AbstractNamedElement {
/**
* Returns the value of the '<em><b>Static Properties</b></em>' containment reference list.
- * The list contents are of type {@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredStaticProperty}.
+ * The list contents are of type {@link org.eclipse.xpand3.staticTypesystem.DeclaredStaticProperty}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Static Properties</em>' containment reference list isn't clear,
@@ -42,7 +41,7 @@ public interface DeclaredType extends AbstractNamedElement {
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Static Properties</em>' containment reference list.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage#getDeclaredType_StaticProperties()
+ * @see org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage#getDeclaredType_StaticProperties()
* @model containment="true"
* @generated
*/
@@ -50,7 +49,7 @@ public interface DeclaredType extends AbstractNamedElement {
/**
* Returns the value of the '<em><b>Properties</b></em>' containment reference list.
- * The list contents are of type {@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredProperty}.
+ * The list contents are of type {@link org.eclipse.xpand3.staticTypesystem.DeclaredProperty}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Properties</em>' containment reference list isn't clear,
@@ -58,7 +57,7 @@ public interface DeclaredType extends AbstractNamedElement {
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Properties</em>' containment reference list.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage#getDeclaredType_Properties()
+ * @see org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage#getDeclaredType_Properties()
* @model containment="true"
* @generated
*/
@@ -66,8 +65,8 @@ public interface DeclaredType extends AbstractNamedElement {
/**
* Returns the value of the '<em><b>Operations</b></em>' containment reference list.
- * The list contents are of type {@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredOperation}.
- * It is bidirectional and its opposite is '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredOperation#getDeclaringType <em>Declaring Type</em>}'.
+ * The list contents are of type {@link org.eclipse.xpand3.staticTypesystem.DeclaredOperation}.
+ * It is bidirectional and its opposite is '{@link org.eclipse.xpand3.staticTypesystem.DeclaredOperation#getDeclaringType <em>Declaring Type</em>}'.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Operations</em>' containment reference list isn't clear,
@@ -75,8 +74,8 @@ public interface DeclaredType extends AbstractNamedElement {
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Operations</em>' containment reference list.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage#getDeclaredType_Operations()
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredOperation#getDeclaringType
+ * @see org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage#getDeclaredType_Operations()
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredOperation#getDeclaringType
* @model opposite="declaringType" containment="true"
* @generated
*/
@@ -84,7 +83,7 @@ public interface DeclaredType extends AbstractNamedElement {
/**
* Returns the value of the '<em><b>Declared Type Parameters</b></em>' containment reference list.
- * The list contents are of type {@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredTypeParameter}.
+ * The list contents are of type {@link org.eclipse.xpand3.staticTypesystem.DeclaredTypeParameter}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Declared Type Parameters</em>' containment reference list isn't clear,
@@ -92,7 +91,7 @@ public interface DeclaredType extends AbstractNamedElement {
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Declared Type Parameters</em>' containment reference list.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage#getDeclaredType_DeclaredTypeParameters()
+ * @see org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage#getDeclaredType_DeclaredTypeParameters()
* @model containment="true"
* @generated
*/
@@ -108,14 +107,14 @@ public interface DeclaredType extends AbstractNamedElement {
* <!-- end-user-doc -->
* @return the value of the '<em>Backend Type</em>' attribute.
* @see #setBackendType(BackendType)
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage#getDeclaredType_BackendType()
+ * @see org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage#getDeclaredType_BackendType()
* @model dataType="org.eclipse.xpand3.staticTypesystem.BackendType" required="true"
* @generated
*/
BackendType getBackendType();
/**
- * Sets the value of the '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType#getBackendType <em>Backend Type</em>}' attribute.
+ * Sets the value of the '{@link org.eclipse.xpand3.staticTypesystem.DeclaredType#getBackendType <em>Backend Type</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Backend Type</em>' attribute.
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredTypeParameter.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredTypeParameter.java
new file mode 100644
index 0000000..afb6c59
--- /dev/null
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/DeclaredTypeParameter.java
@@ -0,0 +1,45 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id: DeclaredTypeParameter.java,v 1.1 2008/03/04 14:03:38 sefftinge Exp $
+ */
+package org.eclipse.xpand3.staticTypesystem;
+
+import org.eclipse.emf.common.util.EList;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Declared Type Parameter</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.DeclaredTypeParameter#getUpperBounds <em>Upper Bounds</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage#getDeclaredTypeParameter()
+ * @model
+ * @generated
+ */
+public interface DeclaredTypeParameter extends AbstractNamedElement {
+
+ /**
+ * Returns the value of the '<em><b>Upper Bounds</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.xpand3.staticTypesystem.AbstractTypeReference}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Upper Bounds</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Upper Bounds</em>' reference list.
+ * @see org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage#getDeclaredTypeParameter_UpperBounds()
+ * @model
+ * @generated
+ */
+ EList<AbstractTypeReference> getUpperBounds();
+} // DeclaredTypeParameter
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/FunctionType.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/FunctionType.java
index bbb3b6d..7a3f214 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/FunctionType.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/FunctionType.java
@@ -2,14 +2,12 @@
* <copyright>
* </copyright>
*
- * $Id: FunctionType.java,v 1.1 2008/03/04 10:53:03 sefftinge Exp $
+ * $Id: FunctionType.java,v 1.2 2008/03/04 14:03:38 sefftinge Exp $
*/
package org.eclipse.xpand3.staticTypesystem;
import org.eclipse.emf.common.util.EList;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredFunction;
-
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Function Type</b></em>'.
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/StaticTypesystemFactory.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/StaticTypesystemFactory.java
index 55c906a..8dbc1d6 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/StaticTypesystemFactory.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/StaticTypesystemFactory.java
@@ -2,7 +2,7 @@
* <copyright>
* </copyright>
*
- * $Id: StaticTypesystemFactory.java,v 1.1 2008/03/04 10:53:03 sefftinge Exp $
+ * $Id: StaticTypesystemFactory.java,v 1.2 2008/03/04 14:03:38 sefftinge Exp $
*/
package org.eclipse.xpand3.staticTypesystem;
@@ -71,6 +71,69 @@ public interface StaticTypesystemFactory extends EFactory {
FunctionType createFunctionType();
/**
+ * Returns a new object of class '<em>Declared Type</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Declared Type</em>'.
+ * @generated
+ */
+ DeclaredType createDeclaredType();
+
+ /**
+ * Returns a new object of class '<em>Declared Operation</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Declared Operation</em>'.
+ * @generated
+ */
+ DeclaredOperation createDeclaredOperation();
+
+ /**
+ * Returns a new object of class '<em>Declared Function</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Declared Function</em>'.
+ * @generated
+ */
+ DeclaredFunction createDeclaredFunction();
+
+ /**
+ * Returns a new object of class '<em>Declared Property</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Declared Property</em>'.
+ * @generated
+ */
+ DeclaredProperty createDeclaredProperty();
+
+ /**
+ * Returns a new object of class '<em>Declared Static Property</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Declared Static Property</em>'.
+ * @generated
+ */
+ DeclaredStaticProperty createDeclaredStaticProperty();
+
+ /**
+ * Returns a new object of class '<em>Declared Type Parameter</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Declared Type Parameter</em>'.
+ * @generated
+ */
+ DeclaredTypeParameter createDeclaredTypeParameter();
+
+ /**
+ * Returns a new object of class '<em>Declared Parameter</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Declared Parameter</em>'.
+ * @generated
+ */
+ DeclaredParameter createDeclaredParameter();
+
+ /**
* Returns the package supported by this factory.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/StaticTypesystemPackage.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/StaticTypesystemPackage.java
index f1d1a21..b53136a 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/StaticTypesystemPackage.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/StaticTypesystemPackage.java
@@ -2,7 +2,7 @@
* <copyright>
* </copyright>
*
- * $Id: StaticTypesystemPackage.java,v 1.2 2008/03/04 11:00:30 sefftinge Exp $
+ * $Id: StaticTypesystemPackage.java,v 1.3 2008/03/04 14:03:38 sefftinge Exp $
*/
package org.eclipse.xpand3.staticTypesystem;
@@ -228,7 +228,6 @@ public interface StaticTypesystemPackage extends EPackage {
*/
int WILDCARD_TYPE_FEATURE_COUNT = ABSTRACT_TYPE_REFERENCE_FEATURE_COUNT + 2;
-
/**
* The meta object id for the '{@link org.eclipse.xpand3.staticTypesystem.impl.FunctionTypeImpl <em>Function Type</em>}' class.
* <!-- begin-user-doc -->
@@ -266,6 +265,336 @@ public interface StaticTypesystemPackage extends EPackage {
*/
int FUNCTION_TYPE_FEATURE_COUNT = ABSTRACT_TYPE_REFERENCE_FEATURE_COUNT + 2;
+ /**
+ * The meta object id for the '{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredTypeImpl <em>Declared Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.xpand3.staticTypesystem.impl.DeclaredTypeImpl
+ * @see org.eclipse.xpand3.staticTypesystem.impl.StaticTypesystemPackageImpl#getDeclaredType()
+ * @generated
+ */
+ int DECLARED_TYPE = 7;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_TYPE__NAME = ABSTRACT_NAMED_ELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Static Properties</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_TYPE__STATIC_PROPERTIES = ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Properties</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_TYPE__PROPERTIES = ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Operations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_TYPE__OPERATIONS = ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Declared Type Parameters</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_TYPE__DECLARED_TYPE_PARAMETERS = ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Backend Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_TYPE__BACKEND_TYPE = ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 4;
+
+ /**
+ * The number of structural features of the '<em>Declared Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_TYPE_FEATURE_COUNT = ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 5;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredOperationImpl <em>Declared Operation</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.xpand3.staticTypesystem.impl.DeclaredOperationImpl
+ * @see org.eclipse.xpand3.staticTypesystem.impl.StaticTypesystemPackageImpl#getDeclaredOperation()
+ * @generated
+ */
+ int DECLARED_OPERATION = 8;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_OPERATION__NAME = ABSTRACT_NAMED_ELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Declared Parameters</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_OPERATION__DECLARED_PARAMETERS = ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Declaring Type</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_OPERATION__DECLARING_TYPE = ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Return Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_OPERATION__RETURN_TYPE = ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the '<em>Declared Operation</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_OPERATION_FEATURE_COUNT = ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredFunctionImpl <em>Declared Function</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.xpand3.staticTypesystem.impl.DeclaredFunctionImpl
+ * @see org.eclipse.xpand3.staticTypesystem.impl.StaticTypesystemPackageImpl#getDeclaredFunction()
+ * @generated
+ */
+ int DECLARED_FUNCTION = 9;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_FUNCTION__NAME = ABSTRACT_NAMED_ELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Declared Parameters</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_FUNCTION__DECLARED_PARAMETERS = ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Declared Type Parameters</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_FUNCTION__DECLARED_TYPE_PARAMETERS = ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Return Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_FUNCTION__RETURN_TYPE = ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the '<em>Declared Function</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_FUNCTION_FEATURE_COUNT = ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredPropertyImpl <em>Declared Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.xpand3.staticTypesystem.impl.DeclaredPropertyImpl
+ * @see org.eclipse.xpand3.staticTypesystem.impl.StaticTypesystemPackageImpl#getDeclaredProperty()
+ * @generated
+ */
+ int DECLARED_PROPERTY = 10;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_PROPERTY__NAME = ABSTRACT_NAMED_ELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_PROPERTY__TYPE = ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Declared Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_PROPERTY_FEATURE_COUNT = ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredStaticPropertyImpl <em>Declared Static Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.xpand3.staticTypesystem.impl.DeclaredStaticPropertyImpl
+ * @see org.eclipse.xpand3.staticTypesystem.impl.StaticTypesystemPackageImpl#getDeclaredStaticProperty()
+ * @generated
+ */
+ int DECLARED_STATIC_PROPERTY = 11;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_STATIC_PROPERTY__NAME = ABSTRACT_NAMED_ELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_STATIC_PROPERTY__TYPE = ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Declared Static Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_STATIC_PROPERTY_FEATURE_COUNT = ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredTypeParameterImpl <em>Declared Type Parameter</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.xpand3.staticTypesystem.impl.DeclaredTypeParameterImpl
+ * @see org.eclipse.xpand3.staticTypesystem.impl.StaticTypesystemPackageImpl#getDeclaredTypeParameter()
+ * @generated
+ */
+ int DECLARED_TYPE_PARAMETER = 12;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_TYPE_PARAMETER__NAME = ABSTRACT_NAMED_ELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Upper Bounds</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_TYPE_PARAMETER__UPPER_BOUNDS = ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Declared Type Parameter</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_TYPE_PARAMETER_FEATURE_COUNT = ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredParameterImpl <em>Declared Parameter</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.xpand3.staticTypesystem.impl.DeclaredParameterImpl
+ * @see org.eclipse.xpand3.staticTypesystem.impl.StaticTypesystemPackageImpl#getDeclaredParameter()
+ * @generated
+ */
+ int DECLARED_PARAMETER = 13;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_PARAMETER__NAME = ABSTRACT_NAMED_ELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_PARAMETER__TYPE = ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Declared Parameter</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DECLARED_PARAMETER_FEATURE_COUNT = ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 1;
/**
* The meta object id for the '<em>Backend Type</em>' data type.
@@ -275,7 +604,7 @@ public interface StaticTypesystemPackage extends EPackage {
* @see org.eclipse.xpand3.staticTypesystem.impl.StaticTypesystemPackageImpl#getBackendType()
* @generated
*/
- int BACKEND_TYPE = 7;
+ int BACKEND_TYPE = 14;
/**
@@ -437,6 +766,241 @@ public interface StaticTypesystemPackage extends EPackage {
EReference getFunctionType_ActualTypeArguments();
/**
+ * Returns the meta object for class '{@link org.eclipse.xpand3.staticTypesystem.DeclaredType <em>Declared Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Declared Type</em>'.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredType
+ * @generated
+ */
+ EClass getDeclaredType();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.xpand3.staticTypesystem.DeclaredType#getStaticProperties <em>Static Properties</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Static Properties</em>'.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredType#getStaticProperties()
+ * @see #getDeclaredType()
+ * @generated
+ */
+ EReference getDeclaredType_StaticProperties();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.xpand3.staticTypesystem.DeclaredType#getProperties <em>Properties</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Properties</em>'.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredType#getProperties()
+ * @see #getDeclaredType()
+ * @generated
+ */
+ EReference getDeclaredType_Properties();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.xpand3.staticTypesystem.DeclaredType#getOperations <em>Operations</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Operations</em>'.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredType#getOperations()
+ * @see #getDeclaredType()
+ * @generated
+ */
+ EReference getDeclaredType_Operations();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.xpand3.staticTypesystem.DeclaredType#getDeclaredTypeParameters <em>Declared Type Parameters</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Declared Type Parameters</em>'.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredType#getDeclaredTypeParameters()
+ * @see #getDeclaredType()
+ * @generated
+ */
+ EReference getDeclaredType_DeclaredTypeParameters();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.xpand3.staticTypesystem.DeclaredType#getBackendType <em>Backend Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Backend Type</em>'.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredType#getBackendType()
+ * @see #getDeclaredType()
+ * @generated
+ */
+ EAttribute getDeclaredType_BackendType();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.xpand3.staticTypesystem.DeclaredOperation <em>Declared Operation</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Declared Operation</em>'.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredOperation
+ * @generated
+ */
+ EClass getDeclaredOperation();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.xpand3.staticTypesystem.DeclaredOperation#getDeclaredParameters <em>Declared Parameters</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Declared Parameters</em>'.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredOperation#getDeclaredParameters()
+ * @see #getDeclaredOperation()
+ * @generated
+ */
+ EReference getDeclaredOperation_DeclaredParameters();
+
+ /**
+ * Returns the meta object for the container reference '{@link org.eclipse.xpand3.staticTypesystem.DeclaredOperation#getDeclaringType <em>Declaring Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the container reference '<em>Declaring Type</em>'.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredOperation#getDeclaringType()
+ * @see #getDeclaredOperation()
+ * @generated
+ */
+ EReference getDeclaredOperation_DeclaringType();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.xpand3.staticTypesystem.DeclaredOperation#getReturnType <em>Return Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Return Type</em>'.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredOperation#getReturnType()
+ * @see #getDeclaredOperation()
+ * @generated
+ */
+ EReference getDeclaredOperation_ReturnType();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.xpand3.staticTypesystem.DeclaredFunction <em>Declared Function</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Declared Function</em>'.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredFunction
+ * @generated
+ */
+ EClass getDeclaredFunction();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.xpand3.staticTypesystem.DeclaredFunction#getDeclaredParameters <em>Declared Parameters</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Declared Parameters</em>'.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredFunction#getDeclaredParameters()
+ * @see #getDeclaredFunction()
+ * @generated
+ */
+ EReference getDeclaredFunction_DeclaredParameters();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.xpand3.staticTypesystem.DeclaredFunction#getDeclaredTypeParameters <em>Declared Type Parameters</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Declared Type Parameters</em>'.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredFunction#getDeclaredTypeParameters()
+ * @see #getDeclaredFunction()
+ * @generated
+ */
+ EReference getDeclaredFunction_DeclaredTypeParameters();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.xpand3.staticTypesystem.DeclaredFunction#getReturnType <em>Return Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Return Type</em>'.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredFunction#getReturnType()
+ * @see #getDeclaredFunction()
+ * @generated
+ */
+ EReference getDeclaredFunction_ReturnType();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.xpand3.staticTypesystem.DeclaredProperty <em>Declared Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Declared Property</em>'.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredProperty
+ * @generated
+ */
+ EClass getDeclaredProperty();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.xpand3.staticTypesystem.DeclaredProperty#getType <em>Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Type</em>'.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredProperty#getType()
+ * @see #getDeclaredProperty()
+ * @generated
+ */
+ EReference getDeclaredProperty_Type();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.xpand3.staticTypesystem.DeclaredStaticProperty <em>Declared Static Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Declared Static Property</em>'.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredStaticProperty
+ * @generated
+ */
+ EClass getDeclaredStaticProperty();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.xpand3.staticTypesystem.DeclaredStaticProperty#getType <em>Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Type</em>'.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredStaticProperty#getType()
+ * @see #getDeclaredStaticProperty()
+ * @generated
+ */
+ EReference getDeclaredStaticProperty_Type();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.xpand3.staticTypesystem.DeclaredTypeParameter <em>Declared Type Parameter</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Declared Type Parameter</em>'.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredTypeParameter
+ * @generated
+ */
+ EClass getDeclaredTypeParameter();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.xpand3.staticTypesystem.DeclaredTypeParameter#getUpperBounds <em>Upper Bounds</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Upper Bounds</em>'.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredTypeParameter#getUpperBounds()
+ * @see #getDeclaredTypeParameter()
+ * @generated
+ */
+ EReference getDeclaredTypeParameter_UpperBounds();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.xpand3.staticTypesystem.DeclaredParameter <em>Declared Parameter</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Declared Parameter</em>'.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredParameter
+ * @generated
+ */
+ EClass getDeclaredParameter();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.xpand3.staticTypesystem.DeclaredParameter#getType <em>Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Type</em>'.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredParameter#getType()
+ * @see #getDeclaredParameter()
+ * @generated
+ */
+ EReference getDeclaredParameter_Type();
+
+ /**
* Returns the meta object for data type '{@link org.eclipse.xtend.backend.common.BackendType <em>Backend Type</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -604,6 +1168,196 @@ public interface StaticTypesystemPackage extends EPackage {
EReference FUNCTION_TYPE__ACTUAL_TYPE_ARGUMENTS = eINSTANCE.getFunctionType_ActualTypeArguments();
/**
+ * The meta object literal for the '{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredTypeImpl <em>Declared Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.xpand3.staticTypesystem.impl.DeclaredTypeImpl
+ * @see org.eclipse.xpand3.staticTypesystem.impl.StaticTypesystemPackageImpl#getDeclaredType()
+ * @generated
+ */
+ EClass DECLARED_TYPE = eINSTANCE.getDeclaredType();
+
+ /**
+ * The meta object literal for the '<em><b>Static Properties</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DECLARED_TYPE__STATIC_PROPERTIES = eINSTANCE.getDeclaredType_StaticProperties();
+
+ /**
+ * The meta object literal for the '<em><b>Properties</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DECLARED_TYPE__PROPERTIES = eINSTANCE.getDeclaredType_Properties();
+
+ /**
+ * The meta object literal for the '<em><b>Operations</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DECLARED_TYPE__OPERATIONS = eINSTANCE.getDeclaredType_Operations();
+
+ /**
+ * The meta object literal for the '<em><b>Declared Type Parameters</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DECLARED_TYPE__DECLARED_TYPE_PARAMETERS = eINSTANCE.getDeclaredType_DeclaredTypeParameters();
+
+ /**
+ * The meta object literal for the '<em><b>Backend Type</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DECLARED_TYPE__BACKEND_TYPE = eINSTANCE.getDeclaredType_BackendType();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredOperationImpl <em>Declared Operation</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.xpand3.staticTypesystem.impl.DeclaredOperationImpl
+ * @see org.eclipse.xpand3.staticTypesystem.impl.StaticTypesystemPackageImpl#getDeclaredOperation()
+ * @generated
+ */
+ EClass DECLARED_OPERATION = eINSTANCE.getDeclaredOperation();
+
+ /**
+ * The meta object literal for the '<em><b>Declared Parameters</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DECLARED_OPERATION__DECLARED_PARAMETERS = eINSTANCE.getDeclaredOperation_DeclaredParameters();
+
+ /**
+ * The meta object literal for the '<em><b>Declaring Type</b></em>' container reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DECLARED_OPERATION__DECLARING_TYPE = eINSTANCE.getDeclaredOperation_DeclaringType();
+
+ /**
+ * The meta object literal for the '<em><b>Return Type</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DECLARED_OPERATION__RETURN_TYPE = eINSTANCE.getDeclaredOperation_ReturnType();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredFunctionImpl <em>Declared Function</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.xpand3.staticTypesystem.impl.DeclaredFunctionImpl
+ * @see org.eclipse.xpand3.staticTypesystem.impl.StaticTypesystemPackageImpl#getDeclaredFunction()
+ * @generated
+ */
+ EClass DECLARED_FUNCTION = eINSTANCE.getDeclaredFunction();
+
+ /**
+ * The meta object literal for the '<em><b>Declared Parameters</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DECLARED_FUNCTION__DECLARED_PARAMETERS = eINSTANCE.getDeclaredFunction_DeclaredParameters();
+
+ /**
+ * The meta object literal for the '<em><b>Declared Type Parameters</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DECLARED_FUNCTION__DECLARED_TYPE_PARAMETERS = eINSTANCE.getDeclaredFunction_DeclaredTypeParameters();
+
+ /**
+ * The meta object literal for the '<em><b>Return Type</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DECLARED_FUNCTION__RETURN_TYPE = eINSTANCE.getDeclaredFunction_ReturnType();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredPropertyImpl <em>Declared Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.xpand3.staticTypesystem.impl.DeclaredPropertyImpl
+ * @see org.eclipse.xpand3.staticTypesystem.impl.StaticTypesystemPackageImpl#getDeclaredProperty()
+ * @generated
+ */
+ EClass DECLARED_PROPERTY = eINSTANCE.getDeclaredProperty();
+
+ /**
+ * The meta object literal for the '<em><b>Type</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DECLARED_PROPERTY__TYPE = eINSTANCE.getDeclaredProperty_Type();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredStaticPropertyImpl <em>Declared Static Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.xpand3.staticTypesystem.impl.DeclaredStaticPropertyImpl
+ * @see org.eclipse.xpand3.staticTypesystem.impl.StaticTypesystemPackageImpl#getDeclaredStaticProperty()
+ * @generated
+ */
+ EClass DECLARED_STATIC_PROPERTY = eINSTANCE.getDeclaredStaticProperty();
+
+ /**
+ * The meta object literal for the '<em><b>Type</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DECLARED_STATIC_PROPERTY__TYPE = eINSTANCE.getDeclaredStaticProperty_Type();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredTypeParameterImpl <em>Declared Type Parameter</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.xpand3.staticTypesystem.impl.DeclaredTypeParameterImpl
+ * @see org.eclipse.xpand3.staticTypesystem.impl.StaticTypesystemPackageImpl#getDeclaredTypeParameter()
+ * @generated
+ */
+ EClass DECLARED_TYPE_PARAMETER = eINSTANCE.getDeclaredTypeParameter();
+
+ /**
+ * The meta object literal for the '<em><b>Upper Bounds</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DECLARED_TYPE_PARAMETER__UPPER_BOUNDS = eINSTANCE.getDeclaredTypeParameter_UpperBounds();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredParameterImpl <em>Declared Parameter</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.xpand3.staticTypesystem.impl.DeclaredParameterImpl
+ * @see org.eclipse.xpand3.staticTypesystem.impl.StaticTypesystemPackageImpl#getDeclaredParameter()
+ * @generated
+ */
+ EClass DECLARED_PARAMETER = eINSTANCE.getDeclaredParameter();
+
+ /**
+ * The meta object literal for the '<em><b>Type</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DECLARED_PARAMETER__TYPE = eINSTANCE.getDeclaredParameter_Type();
+
+ /**
* The meta object literal for the '<em>Backend Type</em>' data type.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/Type.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/Type.java
index 095c597..09c2889 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/Type.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/Type.java
@@ -2,14 +2,12 @@
* <copyright>
* </copyright>
*
- * $Id: Type.java,v 1.1 2008/03/04 10:53:03 sefftinge Exp $
+ * $Id: Type.java,v 1.2 2008/03/04 14:03:38 sefftinge Exp $
*/
package org.eclipse.xpand3.staticTypesystem;
import org.eclipse.emf.common.util.EList;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType;
-
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Type</b></em>'.
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/TypeVariable.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/TypeVariable.java
index 31dd044..7f0bc82 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/TypeVariable.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/TypeVariable.java
@@ -2,11 +2,10 @@
* <copyright>
* </copyright>
*
- * $Id: TypeVariable.java,v 1.1 2008/03/04 10:53:03 sefftinge Exp $
+ * $Id: TypeVariable.java,v 1.2 2008/03/04 14:03:38 sefftinge Exp $
*/
package org.eclipse.xpand3.staticTypesystem;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredTypeParameter;
/**
* <!-- begin-user-doc -->
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/VoidType.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/VoidType.java
index 2250988..ecb0096 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/VoidType.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/VoidType.java
@@ -2,7 +2,7 @@
* <copyright>
* </copyright>
*
- * $Id: VoidType.java,v 1.1 2008/03/04 10:53:03 sefftinge Exp $
+ * $Id: VoidType.java,v 1.2 2008/03/04 14:03:38 sefftinge Exp $
*/
package org.eclipse.xpand3.staticTypesystem;
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/WildcardType.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/WildcardType.java
index d4fbd18..b321495 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/WildcardType.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/WildcardType.java
@@ -2,7 +2,7 @@
* <copyright>
* </copyright>
*
- * $Id: WildcardType.java,v 1.1 2008/03/04 10:53:03 sefftinge Exp $
+ * $Id: WildcardType.java,v 1.2 2008/03/04 14:03:38 sefftinge Exp $
*/
package org.eclipse.xpand3.staticTypesystem;
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclarationFactory.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclarationFactory.java
deleted file mode 100644
index 3167918..0000000
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclarationFactory.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: DeclarationFactory.java,v 1.1 2008/03/04 10:52:59 sefftinge Exp $
- */
-package org.eclipse.xpand3.staticTypesystem.declaration;
-
-import org.eclipse.emf.ecore.EFactory;
-
-/**
- * <!-- begin-user-doc -->
- * The <b>Factory</b> for the model.
- * It provides a create method for each non-abstract class of the model.
- * <!-- end-user-doc -->
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage
- * @generated
- */
-public interface DeclarationFactory extends EFactory {
- /**
- * The singleton instance of the factory.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- DeclarationFactory eINSTANCE = org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclarationFactoryImpl.init();
-
- /**
- * Returns a new object of class '<em>Declared Type</em>'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return a new object of class '<em>Declared Type</em>'.
- * @generated
- */
- DeclaredType createDeclaredType();
-
- /**
- * Returns a new object of class '<em>Declared Operation</em>'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return a new object of class '<em>Declared Operation</em>'.
- * @generated
- */
- DeclaredOperation createDeclaredOperation();
-
- /**
- * Returns a new object of class '<em>Declared Function</em>'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return a new object of class '<em>Declared Function</em>'.
- * @generated
- */
- DeclaredFunction createDeclaredFunction();
-
- /**
- * Returns a new object of class '<em>Declared Property</em>'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return a new object of class '<em>Declared Property</em>'.
- * @generated
- */
- DeclaredProperty createDeclaredProperty();
-
- /**
- * Returns a new object of class '<em>Declared Static Property</em>'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return a new object of class '<em>Declared Static Property</em>'.
- * @generated
- */
- DeclaredStaticProperty createDeclaredStaticProperty();
-
- /**
- * Returns a new object of class '<em>Declared Type Parameter</em>'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return a new object of class '<em>Declared Type Parameter</em>'.
- * @generated
- */
- DeclaredTypeParameter createDeclaredTypeParameter();
-
- /**
- * Returns a new object of class '<em>Declared Parameter</em>'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return a new object of class '<em>Declared Parameter</em>'.
- * @generated
- */
- DeclaredParameter createDeclaredParameter();
-
- /**
- * Returns the package supported by this factory.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the package supported by this factory.
- * @generated
- */
- DeclarationPackage getDeclarationPackage();
-
-} //DeclarationFactory
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclarationPackage.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclarationPackage.java
deleted file mode 100644
index dacf6bc..0000000
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclarationPackage.java
+++ /dev/null
@@ -1,733 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: DeclarationPackage.java,v 1.2 2008/03/04 11:00:30 sefftinge Exp $
- */
-package org.eclipse.xpand3.staticTypesystem.declaration;
-
-import org.eclipse.emf.ecore.EAttribute;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.EReference;
-
-import org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage;
-
-/**
- * <!-- begin-user-doc -->
- * The <b>Package</b> for the model.
- * It contains accessors for the meta objects to represent
- * <ul>
- * <li>each class,</li>
- * <li>each feature of each class,</li>
- * <li>each enum,</li>
- * <li>and each data type</li>
- * </ul>
- * <!-- end-user-doc -->
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationFactory
- * @model kind="package"
- * @generated
- */
-public interface DeclarationPackage extends EPackage {
- /**
- * The package name.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- String eNAME = "declaration";
-
- /**
- * The package namespace URI.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- String eNS_URI = "http://www.eclipse.org/m2t/xpand3/staticTypesystem/declaration";
-
- /**
- * The package namespace name.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- String eNS_PREFIX = "declaration";
-
- /**
- * The singleton instance of the package.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- DeclarationPackage eINSTANCE = org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclarationPackageImpl.init();
-
- /**
- * The meta object id for the '{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredTypeImpl <em>Declared Type</em>}' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredTypeImpl
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclarationPackageImpl#getDeclaredType()
- * @generated
- */
- int DECLARED_TYPE = 0;
-
- /**
- * The feature id for the '<em><b>Name</b></em>' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_TYPE__NAME = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT__NAME;
-
- /**
- * The feature id for the '<em><b>Static Properties</b></em>' containment reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_TYPE__STATIC_PROPERTIES = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 0;
-
- /**
- * The feature id for the '<em><b>Properties</b></em>' containment reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_TYPE__PROPERTIES = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 1;
-
- /**
- * The feature id for the '<em><b>Operations</b></em>' containment reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_TYPE__OPERATIONS = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 2;
-
- /**
- * The feature id for the '<em><b>Declared Type Parameters</b></em>' containment reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_TYPE__DECLARED_TYPE_PARAMETERS = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 3;
-
- /**
- * The feature id for the '<em><b>Backend Type</b></em>' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_TYPE__BACKEND_TYPE = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 4;
-
- /**
- * The number of structural features of the '<em>Declared Type</em>' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_TYPE_FEATURE_COUNT = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 5;
-
- /**
- * The meta object id for the '{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredOperationImpl <em>Declared Operation</em>}' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredOperationImpl
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclarationPackageImpl#getDeclaredOperation()
- * @generated
- */
- int DECLARED_OPERATION = 1;
-
- /**
- * The feature id for the '<em><b>Name</b></em>' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_OPERATION__NAME = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT__NAME;
-
- /**
- * The feature id for the '<em><b>Declared Parameters</b></em>' containment reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_OPERATION__DECLARED_PARAMETERS = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 0;
-
- /**
- * The feature id for the '<em><b>Declaring Type</b></em>' container reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_OPERATION__DECLARING_TYPE = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 1;
-
- /**
- * The feature id for the '<em><b>Return Type</b></em>' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_OPERATION__RETURN_TYPE = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 2;
-
- /**
- * The number of structural features of the '<em>Declared Operation</em>' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_OPERATION_FEATURE_COUNT = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 3;
-
- /**
- * The meta object id for the '{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredFunctionImpl <em>Declared Function</em>}' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredFunctionImpl
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclarationPackageImpl#getDeclaredFunction()
- * @generated
- */
- int DECLARED_FUNCTION = 2;
-
- /**
- * The feature id for the '<em><b>Name</b></em>' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_FUNCTION__NAME = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT__NAME;
-
- /**
- * The feature id for the '<em><b>Declared Parameters</b></em>' containment reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_FUNCTION__DECLARED_PARAMETERS = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 0;
-
- /**
- * The feature id for the '<em><b>Declared Type Parameters</b></em>' containment reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_FUNCTION__DECLARED_TYPE_PARAMETERS = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 1;
-
- /**
- * The feature id for the '<em><b>Return Type</b></em>' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_FUNCTION__RETURN_TYPE = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 2;
-
- /**
- * The number of structural features of the '<em>Declared Function</em>' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_FUNCTION_FEATURE_COUNT = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 3;
-
- /**
- * The meta object id for the '{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredPropertyImpl <em>Declared Property</em>}' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredPropertyImpl
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclarationPackageImpl#getDeclaredProperty()
- * @generated
- */
- int DECLARED_PROPERTY = 3;
-
- /**
- * The feature id for the '<em><b>Name</b></em>' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_PROPERTY__NAME = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT__NAME;
-
- /**
- * The number of structural features of the '<em>Declared Property</em>' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_PROPERTY_FEATURE_COUNT = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 0;
-
- /**
- * The meta object id for the '{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredStaticPropertyImpl <em>Declared Static Property</em>}' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredStaticPropertyImpl
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclarationPackageImpl#getDeclaredStaticProperty()
- * @generated
- */
- int DECLARED_STATIC_PROPERTY = 4;
-
- /**
- * The feature id for the '<em><b>Name</b></em>' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_STATIC_PROPERTY__NAME = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT__NAME;
-
- /**
- * The number of structural features of the '<em>Declared Static Property</em>' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_STATIC_PROPERTY_FEATURE_COUNT = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 0;
-
- /**
- * The meta object id for the '{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredTypeParameterImpl <em>Declared Type Parameter</em>}' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredTypeParameterImpl
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclarationPackageImpl#getDeclaredTypeParameter()
- * @generated
- */
- int DECLARED_TYPE_PARAMETER = 5;
-
- /**
- * The feature id for the '<em><b>Name</b></em>' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_TYPE_PARAMETER__NAME = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT__NAME;
-
- /**
- * The number of structural features of the '<em>Declared Type Parameter</em>' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_TYPE_PARAMETER_FEATURE_COUNT = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 0;
-
- /**
- * The meta object id for the '{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredParameterImpl <em>Declared Parameter</em>}' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredParameterImpl
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclarationPackageImpl#getDeclaredParameter()
- * @generated
- */
- int DECLARED_PARAMETER = 6;
-
- /**
- * The feature id for the '<em><b>Name</b></em>' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_PARAMETER__NAME = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT__NAME;
-
- /**
- * The number of structural features of the '<em>Declared Parameter</em>' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int DECLARED_PARAMETER_FEATURE_COUNT = StaticTypesystemPackage.ABSTRACT_NAMED_ELEMENT_FEATURE_COUNT + 0;
-
-
- /**
- * Returns the meta object for class '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType <em>Declared Type</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for class '<em>Declared Type</em>'.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType
- * @generated
- */
- EClass getDeclaredType();
-
- /**
- * Returns the meta object for the containment reference list '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType#getStaticProperties <em>Static Properties</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for the containment reference list '<em>Static Properties</em>'.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType#getStaticProperties()
- * @see #getDeclaredType()
- * @generated
- */
- EReference getDeclaredType_StaticProperties();
-
- /**
- * Returns the meta object for the containment reference list '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType#getProperties <em>Properties</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for the containment reference list '<em>Properties</em>'.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType#getProperties()
- * @see #getDeclaredType()
- * @generated
- */
- EReference getDeclaredType_Properties();
-
- /**
- * Returns the meta object for the containment reference list '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType#getOperations <em>Operations</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for the containment reference list '<em>Operations</em>'.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType#getOperations()
- * @see #getDeclaredType()
- * @generated
- */
- EReference getDeclaredType_Operations();
-
- /**
- * Returns the meta object for the containment reference list '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType#getDeclaredTypeParameters <em>Declared Type Parameters</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for the containment reference list '<em>Declared Type Parameters</em>'.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType#getDeclaredTypeParameters()
- * @see #getDeclaredType()
- * @generated
- */
- EReference getDeclaredType_DeclaredTypeParameters();
-
- /**
- * Returns the meta object for the attribute '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType#getBackendType <em>Backend Type</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for the attribute '<em>Backend Type</em>'.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType#getBackendType()
- * @see #getDeclaredType()
- * @generated
- */
- EAttribute getDeclaredType_BackendType();
-
- /**
- * Returns the meta object for class '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredOperation <em>Declared Operation</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for class '<em>Declared Operation</em>'.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredOperation
- * @generated
- */
- EClass getDeclaredOperation();
-
- /**
- * Returns the meta object for the containment reference list '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredOperation#getDeclaredParameters <em>Declared Parameters</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for the containment reference list '<em>Declared Parameters</em>'.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredOperation#getDeclaredParameters()
- * @see #getDeclaredOperation()
- * @generated
- */
- EReference getDeclaredOperation_DeclaredParameters();
-
- /**
- * Returns the meta object for the container reference '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredOperation#getDeclaringType <em>Declaring Type</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for the container reference '<em>Declaring Type</em>'.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredOperation#getDeclaringType()
- * @see #getDeclaredOperation()
- * @generated
- */
- EReference getDeclaredOperation_DeclaringType();
-
- /**
- * Returns the meta object for the reference '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredOperation#getReturnType <em>Return Type</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for the reference '<em>Return Type</em>'.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredOperation#getReturnType()
- * @see #getDeclaredOperation()
- * @generated
- */
- EReference getDeclaredOperation_ReturnType();
-
- /**
- * Returns the meta object for class '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredFunction <em>Declared Function</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for class '<em>Declared Function</em>'.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredFunction
- * @generated
- */
- EClass getDeclaredFunction();
-
- /**
- * Returns the meta object for the containment reference list '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredFunction#getDeclaredParameters <em>Declared Parameters</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for the containment reference list '<em>Declared Parameters</em>'.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredFunction#getDeclaredParameters()
- * @see #getDeclaredFunction()
- * @generated
- */
- EReference getDeclaredFunction_DeclaredParameters();
-
- /**
- * Returns the meta object for the containment reference list '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredFunction#getDeclaredTypeParameters <em>Declared Type Parameters</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for the containment reference list '<em>Declared Type Parameters</em>'.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredFunction#getDeclaredTypeParameters()
- * @see #getDeclaredFunction()
- * @generated
- */
- EReference getDeclaredFunction_DeclaredTypeParameters();
-
- /**
- * Returns the meta object for the reference '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredFunction#getReturnType <em>Return Type</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for the reference '<em>Return Type</em>'.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredFunction#getReturnType()
- * @see #getDeclaredFunction()
- * @generated
- */
- EReference getDeclaredFunction_ReturnType();
-
- /**
- * Returns the meta object for class '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredProperty <em>Declared Property</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for class '<em>Declared Property</em>'.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredProperty
- * @generated
- */
- EClass getDeclaredProperty();
-
- /**
- * Returns the meta object for class '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredStaticProperty <em>Declared Static Property</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for class '<em>Declared Static Property</em>'.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredStaticProperty
- * @generated
- */
- EClass getDeclaredStaticProperty();
-
- /**
- * Returns the meta object for class '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredTypeParameter <em>Declared Type Parameter</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for class '<em>Declared Type Parameter</em>'.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredTypeParameter
- * @generated
- */
- EClass getDeclaredTypeParameter();
-
- /**
- * Returns the meta object for class '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredParameter <em>Declared Parameter</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for class '<em>Declared Parameter</em>'.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredParameter
- * @generated
- */
- EClass getDeclaredParameter();
-
- /**
- * Returns the factory that creates the instances of the model.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the factory that creates the instances of the model.
- * @generated
- */
- DeclarationFactory getDeclarationFactory();
-
- /**
- * <!-- begin-user-doc -->
- * Defines literals for the meta objects that represent
- * <ul>
- * <li>each class,</li>
- * <li>each feature of each class,</li>
- * <li>each enum,</li>
- * <li>and each data type</li>
- * </ul>
- * <!-- end-user-doc -->
- * @generated
- */
- interface Literals {
- /**
- * The meta object literal for the '{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredTypeImpl <em>Declared Type</em>}' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredTypeImpl
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclarationPackageImpl#getDeclaredType()
- * @generated
- */
- EClass DECLARED_TYPE = eINSTANCE.getDeclaredType();
-
- /**
- * The meta object literal for the '<em><b>Static Properties</b></em>' containment reference list feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- EReference DECLARED_TYPE__STATIC_PROPERTIES = eINSTANCE.getDeclaredType_StaticProperties();
-
- /**
- * The meta object literal for the '<em><b>Properties</b></em>' containment reference list feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- EReference DECLARED_TYPE__PROPERTIES = eINSTANCE.getDeclaredType_Properties();
-
- /**
- * The meta object literal for the '<em><b>Operations</b></em>' containment reference list feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- EReference DECLARED_TYPE__OPERATIONS = eINSTANCE.getDeclaredType_Operations();
-
- /**
- * The meta object literal for the '<em><b>Declared Type Parameters</b></em>' containment reference list feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- EReference DECLARED_TYPE__DECLARED_TYPE_PARAMETERS = eINSTANCE.getDeclaredType_DeclaredTypeParameters();
-
- /**
- * The meta object literal for the '<em><b>Backend Type</b></em>' attribute feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- EAttribute DECLARED_TYPE__BACKEND_TYPE = eINSTANCE.getDeclaredType_BackendType();
-
- /**
- * The meta object literal for the '{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredOperationImpl <em>Declared Operation</em>}' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredOperationImpl
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclarationPackageImpl#getDeclaredOperation()
- * @generated
- */
- EClass DECLARED_OPERATION = eINSTANCE.getDeclaredOperation();
-
- /**
- * The meta object literal for the '<em><b>Declared Parameters</b></em>' containment reference list feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- EReference DECLARED_OPERATION__DECLARED_PARAMETERS = eINSTANCE.getDeclaredOperation_DeclaredParameters();
-
- /**
- * The meta object literal for the '<em><b>Declaring Type</b></em>' container reference feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- EReference DECLARED_OPERATION__DECLARING_TYPE = eINSTANCE.getDeclaredOperation_DeclaringType();
-
- /**
- * The meta object literal for the '<em><b>Return Type</b></em>' reference feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- EReference DECLARED_OPERATION__RETURN_TYPE = eINSTANCE.getDeclaredOperation_ReturnType();
-
- /**
- * The meta object literal for the '{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredFunctionImpl <em>Declared Function</em>}' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredFunctionImpl
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclarationPackageImpl#getDeclaredFunction()
- * @generated
- */
- EClass DECLARED_FUNCTION = eINSTANCE.getDeclaredFunction();
-
- /**
- * The meta object literal for the '<em><b>Declared Parameters</b></em>' containment reference list feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- EReference DECLARED_FUNCTION__DECLARED_PARAMETERS = eINSTANCE.getDeclaredFunction_DeclaredParameters();
-
- /**
- * The meta object literal for the '<em><b>Declared Type Parameters</b></em>' containment reference list feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- EReference DECLARED_FUNCTION__DECLARED_TYPE_PARAMETERS = eINSTANCE.getDeclaredFunction_DeclaredTypeParameters();
-
- /**
- * The meta object literal for the '<em><b>Return Type</b></em>' reference feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- EReference DECLARED_FUNCTION__RETURN_TYPE = eINSTANCE.getDeclaredFunction_ReturnType();
-
- /**
- * The meta object literal for the '{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredPropertyImpl <em>Declared Property</em>}' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredPropertyImpl
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclarationPackageImpl#getDeclaredProperty()
- * @generated
- */
- EClass DECLARED_PROPERTY = eINSTANCE.getDeclaredProperty();
-
- /**
- * The meta object literal for the '{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredStaticPropertyImpl <em>Declared Static Property</em>}' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredStaticPropertyImpl
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclarationPackageImpl#getDeclaredStaticProperty()
- * @generated
- */
- EClass DECLARED_STATIC_PROPERTY = eINSTANCE.getDeclaredStaticProperty();
-
- /**
- * The meta object literal for the '{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredTypeParameterImpl <em>Declared Type Parameter</em>}' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredTypeParameterImpl
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclarationPackageImpl#getDeclaredTypeParameter()
- * @generated
- */
- EClass DECLARED_TYPE_PARAMETER = eINSTANCE.getDeclaredTypeParameter();
-
- /**
- * The meta object literal for the '{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredParameterImpl <em>Declared Parameter</em>}' class.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredParameterImpl
- * @see org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclarationPackageImpl#getDeclaredParameter()
- * @generated
- */
- EClass DECLARED_PARAMETER = eINSTANCE.getDeclaredParameter();
-
- }
-
-} //DeclarationPackage
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredParameter.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredParameter.java
deleted file mode 100644
index a088fc4..0000000
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredParameter.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: DeclaredParameter.java,v 1.1 2008/03/04 10:52:58 sefftinge Exp $
- */
-package org.eclipse.xpand3.staticTypesystem.declaration;
-
-import org.eclipse.xpand3.staticTypesystem.AbstractNamedElement;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Declared Parameter</b></em>'.
- * <!-- end-user-doc -->
- *
- *
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage#getDeclaredParameter()
- * @model
- * @generated
- */
-public interface DeclaredParameter extends AbstractNamedElement {
-} // DeclaredParameter
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredProperty.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredProperty.java
deleted file mode 100644
index 4263ee8..0000000
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredProperty.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: DeclaredProperty.java,v 1.1 2008/03/04 10:52:59 sefftinge Exp $
- */
-package org.eclipse.xpand3.staticTypesystem.declaration;
-
-import org.eclipse.xpand3.staticTypesystem.AbstractNamedElement;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Declared Property</b></em>'.
- * <!-- end-user-doc -->
- *
- *
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage#getDeclaredProperty()
- * @model
- * @generated
- */
-public interface DeclaredProperty extends AbstractNamedElement {
-} // DeclaredProperty
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredStaticProperty.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredStaticProperty.java
deleted file mode 100644
index c1380a3..0000000
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredStaticProperty.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: DeclaredStaticProperty.java,v 1.1 2008/03/04 10:52:58 sefftinge Exp $
- */
-package org.eclipse.xpand3.staticTypesystem.declaration;
-
-import org.eclipse.xpand3.staticTypesystem.AbstractNamedElement;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Declared Static Property</b></em>'.
- * <!-- end-user-doc -->
- *
- *
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage#getDeclaredStaticProperty()
- * @model
- * @generated
- */
-public interface DeclaredStaticProperty extends AbstractNamedElement {
-} // DeclaredStaticProperty
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredTypeParameter.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredTypeParameter.java
deleted file mode 100644
index 899b58f..0000000
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/DeclaredTypeParameter.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: DeclaredTypeParameter.java,v 1.1 2008/03/04 10:52:59 sefftinge Exp $
- */
-package org.eclipse.xpand3.staticTypesystem.declaration;
-
-import org.eclipse.xpand3.staticTypesystem.AbstractNamedElement;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Declared Type Parameter</b></em>'.
- * <!-- end-user-doc -->
- *
- *
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage#getDeclaredTypeParameter()
- * @model
- * @generated
- */
-public interface DeclaredTypeParameter extends AbstractNamedElement {
-} // DeclaredTypeParameter
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclarationFactoryImpl.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclarationFactoryImpl.java
deleted file mode 100644
index fbb63fa..0000000
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclarationFactoryImpl.java
+++ /dev/null
@@ -1,165 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: DeclarationFactoryImpl.java,v 1.1 2008/03/04 10:53:02 sefftinge Exp $
- */
-package org.eclipse.xpand3.staticTypesystem.declaration.impl;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EPackage;
-
-import org.eclipse.emf.ecore.impl.EFactoryImpl;
-
-import org.eclipse.emf.ecore.plugin.EcorePlugin;
-
-import org.eclipse.xpand3.staticTypesystem.declaration.*;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model <b>Factory</b>.
- * <!-- end-user-doc -->
- * @generated
- */
-public class DeclarationFactoryImpl extends EFactoryImpl implements DeclarationFactory {
- /**
- * Creates the default factory implementation.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public static DeclarationFactory init() {
- try {
- DeclarationFactory theDeclarationFactory = (DeclarationFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/m2t/xpand3/staticTypesystem/declaration");
- if (theDeclarationFactory != null) {
- return theDeclarationFactory;
- }
- }
- catch (Exception exception) {
- EcorePlugin.INSTANCE.log(exception);
- }
- return new DeclarationFactoryImpl();
- }
-
- /**
- * Creates an instance of the factory.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public DeclarationFactoryImpl() {
- super();
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public EObject create(EClass eClass) {
- switch (eClass.getClassifierID()) {
- case DeclarationPackage.DECLARED_TYPE: return createDeclaredType();
- case DeclarationPackage.DECLARED_OPERATION: return createDeclaredOperation();
- case DeclarationPackage.DECLARED_FUNCTION: return createDeclaredFunction();
- case DeclarationPackage.DECLARED_PROPERTY: return createDeclaredProperty();
- case DeclarationPackage.DECLARED_STATIC_PROPERTY: return createDeclaredStaticProperty();
- case DeclarationPackage.DECLARED_TYPE_PARAMETER: return createDeclaredTypeParameter();
- case DeclarationPackage.DECLARED_PARAMETER: return createDeclaredParameter();
- default:
- throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
- }
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public DeclaredType createDeclaredType() {
- DeclaredTypeImpl declaredType = new DeclaredTypeImpl();
- return declaredType;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public DeclaredOperation createDeclaredOperation() {
- DeclaredOperationImpl declaredOperation = new DeclaredOperationImpl();
- return declaredOperation;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public DeclaredFunction createDeclaredFunction() {
- DeclaredFunctionImpl declaredFunction = new DeclaredFunctionImpl();
- return declaredFunction;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public DeclaredProperty createDeclaredProperty() {
- DeclaredPropertyImpl declaredProperty = new DeclaredPropertyImpl();
- return declaredProperty;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public DeclaredStaticProperty createDeclaredStaticProperty() {
- DeclaredStaticPropertyImpl declaredStaticProperty = new DeclaredStaticPropertyImpl();
- return declaredStaticProperty;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public DeclaredTypeParameter createDeclaredTypeParameter() {
- DeclaredTypeParameterImpl declaredTypeParameter = new DeclaredTypeParameterImpl();
- return declaredTypeParameter;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public DeclaredParameter createDeclaredParameter() {
- DeclaredParameterImpl declaredParameter = new DeclaredParameterImpl();
- return declaredParameter;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public DeclarationPackage getDeclarationPackage() {
- return (DeclarationPackage)getEPackage();
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @deprecated
- * @generated
- */
- @Deprecated
- public static DeclarationPackage getPackage() {
- return DeclarationPackage.eINSTANCE;
- }
-
-} //DeclarationFactoryImpl
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclarationPackageImpl.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclarationPackageImpl.java
deleted file mode 100644
index f6a6fe9..0000000
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclarationPackageImpl.java
+++ /dev/null
@@ -1,441 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: DeclarationPackageImpl.java,v 1.2 2008/03/04 11:00:31 sefftinge Exp $
- */
-package org.eclipse.xpand3.staticTypesystem.declaration.impl;
-
-import org.eclipse.emf.ecore.EAttribute;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.EReference;
-
-import org.eclipse.emf.ecore.impl.EPackageImpl;
-
-import org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage;
-
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclarationFactory;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredFunction;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredOperation;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredParameter;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredProperty;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredStaticProperty;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredTypeParameter;
-
-import org.eclipse.xpand3.staticTypesystem.impl.StaticTypesystemPackageImpl;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model <b>Package</b>.
- * <!-- end-user-doc -->
- * @generated
- */
-public class DeclarationPackageImpl extends EPackageImpl implements DeclarationPackage {
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- private EClass declaredTypeEClass = null;
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- private EClass declaredOperationEClass = null;
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- private EClass declaredFunctionEClass = null;
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- private EClass declaredPropertyEClass = null;
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- private EClass declaredStaticPropertyEClass = null;
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- private EClass declaredTypeParameterEClass = null;
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- private EClass declaredParameterEClass = null;
-
- /**
- * Creates an instance of the model <b>Package</b>, registered with
- * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
- * package URI value.
- * <p>Note: the correct way to create the package is via the static
- * factory method {@link #init init()}, which also performs
- * initialization of the package, or returns the registered package,
- * if one already exists.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see org.eclipse.emf.ecore.EPackage.Registry
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage#eNS_URI
- * @see #init()
- * @generated
- */
- private DeclarationPackageImpl() {
- super(eNS_URI, DeclarationFactory.eINSTANCE);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- private static boolean isInited = false;
-
- /**
- * Creates, registers, and initializes the <b>Package</b> for this
- * model, and for any others upon which it depends. Simple
- * dependencies are satisfied by calling this method on all
- * dependent packages before doing anything else. This method drives
- * initialization for interdependent packages directly, in parallel
- * with this package, itself.
- * <p>Of this package and its interdependencies, all packages which
- * have not yet been registered by their URI values are first created
- * and registered. The packages are then initialized in two steps:
- * meta-model objects for all of the packages are created before any
- * are initialized, since one package's meta-model objects may refer to
- * those of another.
- * <p>Invocation of this method will not affect any packages that have
- * already been initialized.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #eNS_URI
- * @see #createPackageContents()
- * @see #initializePackageContents()
- * @generated
- */
- public static DeclarationPackage init() {
- if (isInited) return (DeclarationPackage)EPackage.Registry.INSTANCE.getEPackage(DeclarationPackage.eNS_URI);
-
- // Obtain or create and register package
- DeclarationPackageImpl theDeclarationPackage = (DeclarationPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(eNS_URI) instanceof DeclarationPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(eNS_URI) : new DeclarationPackageImpl());
-
- isInited = true;
-
- // Obtain or create and register interdependencies
- StaticTypesystemPackageImpl theStaticTypesystemPackage = (StaticTypesystemPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(StaticTypesystemPackage.eNS_URI) instanceof StaticTypesystemPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(StaticTypesystemPackage.eNS_URI) : StaticTypesystemPackage.eINSTANCE);
-
- // Create package meta-data objects
- theDeclarationPackage.createPackageContents();
- theStaticTypesystemPackage.createPackageContents();
-
- // Initialize created meta-data
- theDeclarationPackage.initializePackageContents();
- theStaticTypesystemPackage.initializePackageContents();
-
- // Mark meta-data to indicate it can't be changed
- theDeclarationPackage.freeze();
-
- return theDeclarationPackage;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EClass getDeclaredType() {
- return declaredTypeEClass;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EReference getDeclaredType_StaticProperties() {
- return (EReference)declaredTypeEClass.getEStructuralFeatures().get(0);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EReference getDeclaredType_Properties() {
- return (EReference)declaredTypeEClass.getEStructuralFeatures().get(1);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EReference getDeclaredType_Operations() {
- return (EReference)declaredTypeEClass.getEStructuralFeatures().get(2);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EReference getDeclaredType_DeclaredTypeParameters() {
- return (EReference)declaredTypeEClass.getEStructuralFeatures().get(3);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EAttribute getDeclaredType_BackendType() {
- return (EAttribute)declaredTypeEClass.getEStructuralFeatures().get(4);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EClass getDeclaredOperation() {
- return declaredOperationEClass;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EReference getDeclaredOperation_DeclaredParameters() {
- return (EReference)declaredOperationEClass.getEStructuralFeatures().get(0);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EReference getDeclaredOperation_DeclaringType() {
- return (EReference)declaredOperationEClass.getEStructuralFeatures().get(1);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EReference getDeclaredOperation_ReturnType() {
- return (EReference)declaredOperationEClass.getEStructuralFeatures().get(2);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EClass getDeclaredFunction() {
- return declaredFunctionEClass;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EReference getDeclaredFunction_DeclaredParameters() {
- return (EReference)declaredFunctionEClass.getEStructuralFeatures().get(0);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EReference getDeclaredFunction_DeclaredTypeParameters() {
- return (EReference)declaredFunctionEClass.getEStructuralFeatures().get(1);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EReference getDeclaredFunction_ReturnType() {
- return (EReference)declaredFunctionEClass.getEStructuralFeatures().get(2);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EClass getDeclaredProperty() {
- return declaredPropertyEClass;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EClass getDeclaredStaticProperty() {
- return declaredStaticPropertyEClass;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EClass getDeclaredTypeParameter() {
- return declaredTypeParameterEClass;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public EClass getDeclaredParameter() {
- return declaredParameterEClass;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public DeclarationFactory getDeclarationFactory() {
- return (DeclarationFactory)getEFactoryInstance();
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- private boolean isCreated = false;
-
- /**
- * Creates the meta-model objects for the package. This method is
- * guarded to have no affect on any invocation but its first.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void createPackageContents() {
- if (isCreated) return;
- isCreated = true;
-
- // Create classes and their features
- declaredTypeEClass = createEClass(DECLARED_TYPE);
- createEReference(declaredTypeEClass, DECLARED_TYPE__STATIC_PROPERTIES);
- createEReference(declaredTypeEClass, DECLARED_TYPE__PROPERTIES);
- createEReference(declaredTypeEClass, DECLARED_TYPE__OPERATIONS);
- createEReference(declaredTypeEClass, DECLARED_TYPE__DECLARED_TYPE_PARAMETERS);
- createEAttribute(declaredTypeEClass, DECLARED_TYPE__BACKEND_TYPE);
-
- declaredOperationEClass = createEClass(DECLARED_OPERATION);
- createEReference(declaredOperationEClass, DECLARED_OPERATION__DECLARED_PARAMETERS);
- createEReference(declaredOperationEClass, DECLARED_OPERATION__DECLARING_TYPE);
- createEReference(declaredOperationEClass, DECLARED_OPERATION__RETURN_TYPE);
-
- declaredFunctionEClass = createEClass(DECLARED_FUNCTION);
- createEReference(declaredFunctionEClass, DECLARED_FUNCTION__DECLARED_PARAMETERS);
- createEReference(declaredFunctionEClass, DECLARED_FUNCTION__DECLARED_TYPE_PARAMETERS);
- createEReference(declaredFunctionEClass, DECLARED_FUNCTION__RETURN_TYPE);
-
- declaredPropertyEClass = createEClass(DECLARED_PROPERTY);
-
- declaredStaticPropertyEClass = createEClass(DECLARED_STATIC_PROPERTY);
-
- declaredTypeParameterEClass = createEClass(DECLARED_TYPE_PARAMETER);
-
- declaredParameterEClass = createEClass(DECLARED_PARAMETER);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- private boolean isInitialized = false;
-
- /**
- * Complete the initialization of the package and its meta-model. This
- * method is guarded to have no affect on any invocation but its first.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void initializePackageContents() {
- if (isInitialized) return;
- isInitialized = true;
-
- // Initialize package
- setName(eNAME);
- setNsPrefix(eNS_PREFIX);
- setNsURI(eNS_URI);
-
- // Obtain other dependent packages
- StaticTypesystemPackage theStaticTypesystemPackage = (StaticTypesystemPackage)EPackage.Registry.INSTANCE.getEPackage(StaticTypesystemPackage.eNS_URI);
-
- // Create type parameters
-
- // Set bounds for type parameters
-
- // Add supertypes to classes
- declaredTypeEClass.getESuperTypes().add(theStaticTypesystemPackage.getAbstractNamedElement());
- declaredOperationEClass.getESuperTypes().add(theStaticTypesystemPackage.getAbstractNamedElement());
- declaredFunctionEClass.getESuperTypes().add(theStaticTypesystemPackage.getAbstractNamedElement());
- declaredPropertyEClass.getESuperTypes().add(theStaticTypesystemPackage.getAbstractNamedElement());
- declaredStaticPropertyEClass.getESuperTypes().add(theStaticTypesystemPackage.getAbstractNamedElement());
- declaredTypeParameterEClass.getESuperTypes().add(theStaticTypesystemPackage.getAbstractNamedElement());
- declaredParameterEClass.getESuperTypes().add(theStaticTypesystemPackage.getAbstractNamedElement());
-
- // Initialize classes and features; add operations and parameters
- initEClass(declaredTypeEClass, DeclaredType.class, "DeclaredType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEReference(getDeclaredType_StaticProperties(), this.getDeclaredStaticProperty(), null, "staticProperties", null, 0, -1, DeclaredType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEReference(getDeclaredType_Properties(), this.getDeclaredProperty(), null, "properties", null, 0, -1, DeclaredType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEReference(getDeclaredType_Operations(), this.getDeclaredOperation(), this.getDeclaredOperation_DeclaringType(), "operations", null, 0, -1, DeclaredType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEReference(getDeclaredType_DeclaredTypeParameters(), this.getDeclaredTypeParameter(), null, "declaredTypeParameters", null, 0, -1, DeclaredType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEAttribute(getDeclaredType_BackendType(), theStaticTypesystemPackage.getBackendType(), "backendType", null, 1, 1, DeclaredType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
- initEClass(declaredOperationEClass, DeclaredOperation.class, "DeclaredOperation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEReference(getDeclaredOperation_DeclaredParameters(), this.getDeclaredParameter(), null, "declaredParameters", null, 0, -1, DeclaredOperation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEReference(getDeclaredOperation_DeclaringType(), this.getDeclaredType(), this.getDeclaredType_Operations(), "declaringType", null, 1, 1, DeclaredOperation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEReference(getDeclaredOperation_ReturnType(), this.getDeclaredType(), null, "returnType", null, 0, 1, DeclaredOperation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
- initEClass(declaredFunctionEClass, DeclaredFunction.class, "DeclaredFunction", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEReference(getDeclaredFunction_DeclaredParameters(), this.getDeclaredParameter(), null, "declaredParameters", null, 0, -1, DeclaredFunction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEReference(getDeclaredFunction_DeclaredTypeParameters(), this.getDeclaredTypeParameter(), null, "declaredTypeParameters", null, 0, -1, DeclaredFunction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEReference(getDeclaredFunction_ReturnType(), this.getDeclaredType(), null, "returnType", null, 0, 1, DeclaredFunction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
- initEClass(declaredPropertyEClass, DeclaredProperty.class, "DeclaredProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-
- initEClass(declaredStaticPropertyEClass, DeclaredStaticProperty.class, "DeclaredStaticProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-
- initEClass(declaredTypeParameterEClass, DeclaredTypeParameter.class, "DeclaredTypeParameter", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-
- initEClass(declaredParameterEClass, DeclaredParameter.class, "DeclaredParameter", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- }
-
-} //DeclarationPackageImpl
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredParameterImpl.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredParameterImpl.java
deleted file mode 100644
index 4755a9c..0000000
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredParameterImpl.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: DeclaredParameterImpl.java,v 1.1 2008/03/04 10:53:02 sefftinge Exp $
- */
-package org.eclipse.xpand3.staticTypesystem.declaration.impl;
-
-import org.eclipse.emf.ecore.EClass;
-
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredParameter;
-
-import org.eclipse.xpand3.staticTypesystem.impl.AbstractNamedElementImpl;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Declared Parameter</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * </p>
- *
- * @generated
- */
-public class DeclaredParameterImpl extends AbstractNamedElementImpl implements DeclaredParameter {
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected DeclaredParameterImpl() {
- super();
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected EClass eStaticClass() {
- return DeclarationPackage.Literals.DECLARED_PARAMETER;
- }
-
-} //DeclaredParameterImpl
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredPropertyImpl.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredPropertyImpl.java
deleted file mode 100644
index 07c10ef..0000000
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredPropertyImpl.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: DeclaredPropertyImpl.java,v 1.1 2008/03/04 10:53:02 sefftinge Exp $
- */
-package org.eclipse.xpand3.staticTypesystem.declaration.impl;
-
-import org.eclipse.emf.ecore.EClass;
-
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredProperty;
-
-import org.eclipse.xpand3.staticTypesystem.impl.AbstractNamedElementImpl;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Declared Property</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * </p>
- *
- * @generated
- */
-public class DeclaredPropertyImpl extends AbstractNamedElementImpl implements DeclaredProperty {
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected DeclaredPropertyImpl() {
- super();
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected EClass eStaticClass() {
- return DeclarationPackage.Literals.DECLARED_PROPERTY;
- }
-
-} //DeclaredPropertyImpl
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredStaticPropertyImpl.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredStaticPropertyImpl.java
deleted file mode 100644
index fa399ae..0000000
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredStaticPropertyImpl.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: DeclaredStaticPropertyImpl.java,v 1.1 2008/03/04 10:53:02 sefftinge Exp $
- */
-package org.eclipse.xpand3.staticTypesystem.declaration.impl;
-
-import org.eclipse.emf.ecore.EClass;
-
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredStaticProperty;
-
-import org.eclipse.xpand3.staticTypesystem.impl.AbstractNamedElementImpl;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Declared Static Property</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * </p>
- *
- * @generated
- */
-public class DeclaredStaticPropertyImpl extends AbstractNamedElementImpl implements DeclaredStaticProperty {
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected DeclaredStaticPropertyImpl() {
- super();
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected EClass eStaticClass() {
- return DeclarationPackage.Literals.DECLARED_STATIC_PROPERTY;
- }
-
-} //DeclaredStaticPropertyImpl
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredTypeParameterImpl.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredTypeParameterImpl.java
deleted file mode 100644
index 44983cd..0000000
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredTypeParameterImpl.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: DeclaredTypeParameterImpl.java,v 1.1 2008/03/04 10:53:02 sefftinge Exp $
- */
-package org.eclipse.xpand3.staticTypesystem.declaration.impl;
-
-import org.eclipse.emf.ecore.EClass;
-
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredTypeParameter;
-
-import org.eclipse.xpand3.staticTypesystem.impl.AbstractNamedElementImpl;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Declared Type Parameter</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * </p>
- *
- * @generated
- */
-public class DeclaredTypeParameterImpl extends AbstractNamedElementImpl implements DeclaredTypeParameter {
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected DeclaredTypeParameterImpl() {
- super();
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- protected EClass eStaticClass() {
- return DeclarationPackage.Literals.DECLARED_TYPE_PARAMETER;
- }
-
-} //DeclaredTypeParameterImpl
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/util/DeclarationAdapterFactory.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/util/DeclarationAdapterFactory.java
deleted file mode 100644
index 3d6b804..0000000
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/util/DeclarationAdapterFactory.java
+++ /dev/null
@@ -1,252 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: DeclarationAdapterFactory.java,v 1.1 2008/03/04 10:53:03 sefftinge Exp $
- */
-package org.eclipse.xpand3.staticTypesystem.declaration.util;
-
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.common.notify.Notifier;
-
-import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
-
-import org.eclipse.emf.ecore.EObject;
-
-import org.eclipse.xpand3.staticTypesystem.AbstractNamedElement;
-
-import org.eclipse.xpand3.staticTypesystem.declaration.*;
-
-/**
- * <!-- begin-user-doc -->
- * The <b>Adapter Factory</b> for the model.
- * It provides an adapter <code>createXXX</code> method for each class of the model.
- * <!-- end-user-doc -->
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage
- * @generated
- */
-public class DeclarationAdapterFactory extends AdapterFactoryImpl {
- /**
- * The cached model package.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected static DeclarationPackage modelPackage;
-
- /**
- * Creates an instance of the adapter factory.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public DeclarationAdapterFactory() {
- if (modelPackage == null) {
- modelPackage = DeclarationPackage.eINSTANCE;
- }
- }
-
- /**
- * Returns whether this factory is applicable for the type of the object.
- * <!-- begin-user-doc -->
- * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
- * <!-- end-user-doc -->
- * @return whether this factory is applicable for the type of the object.
- * @generated
- */
- @Override
- public boolean isFactoryForType(Object object) {
- if (object == modelPackage) {
- return true;
- }
- if (object instanceof EObject) {
- return ((EObject)object).eClass().getEPackage() == modelPackage;
- }
- return false;
- }
-
- /**
- * The switch the delegates to the <code>createXXX</code> methods.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected DeclarationSwitch<Adapter> modelSwitch =
- new DeclarationSwitch<Adapter>() {
- @Override
- public Adapter caseDeclaredType(DeclaredType object) {
- return createDeclaredTypeAdapter();
- }
- @Override
- public Adapter caseDeclaredOperation(DeclaredOperation object) {
- return createDeclaredOperationAdapter();
- }
- @Override
- public Adapter caseDeclaredFunction(DeclaredFunction object) {
- return createDeclaredFunctionAdapter();
- }
- @Override
- public Adapter caseDeclaredProperty(DeclaredProperty object) {
- return createDeclaredPropertyAdapter();
- }
- @Override
- public Adapter caseDeclaredStaticProperty(DeclaredStaticProperty object) {
- return createDeclaredStaticPropertyAdapter();
- }
- @Override
- public Adapter caseDeclaredTypeParameter(DeclaredTypeParameter object) {
- return createDeclaredTypeParameterAdapter();
- }
- @Override
- public Adapter caseDeclaredParameter(DeclaredParameter object) {
- return createDeclaredParameterAdapter();
- }
- @Override
- public Adapter caseAbstractNamedElement(AbstractNamedElement object) {
- return createAbstractNamedElementAdapter();
- }
- @Override
- public Adapter defaultCase(EObject object) {
- return createEObjectAdapter();
- }
- };
-
- /**
- * Creates an adapter for the <code>target</code>.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @param target the object to adapt.
- * @return the adapter for the <code>target</code>.
- * @generated
- */
- @Override
- public Adapter createAdapter(Notifier target) {
- return modelSwitch.doSwitch((EObject)target);
- }
-
-
- /**
- * Creates a new adapter for an object of class '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType <em>Declared Type</em>}'.
- * <!-- begin-user-doc -->
- * This default implementation returns null so that we can easily ignore cases;
- * it's useful to ignore a case when inheritance will catch all the cases anyway.
- * <!-- end-user-doc -->
- * @return the new adapter.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType
- * @generated
- */
- public Adapter createDeclaredTypeAdapter() {
- return null;
- }
-
- /**
- * Creates a new adapter for an object of class '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredOperation <em>Declared Operation</em>}'.
- * <!-- begin-user-doc -->
- * This default implementation returns null so that we can easily ignore cases;
- * it's useful to ignore a case when inheritance will catch all the cases anyway.
- * <!-- end-user-doc -->
- * @return the new adapter.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredOperation
- * @generated
- */
- public Adapter createDeclaredOperationAdapter() {
- return null;
- }
-
- /**
- * Creates a new adapter for an object of class '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredFunction <em>Declared Function</em>}'.
- * <!-- begin-user-doc -->
- * This default implementation returns null so that we can easily ignore cases;
- * it's useful to ignore a case when inheritance will catch all the cases anyway.
- * <!-- end-user-doc -->
- * @return the new adapter.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredFunction
- * @generated
- */
- public Adapter createDeclaredFunctionAdapter() {
- return null;
- }
-
- /**
- * Creates a new adapter for an object of class '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredProperty <em>Declared Property</em>}'.
- * <!-- begin-user-doc -->
- * This default implementation returns null so that we can easily ignore cases;
- * it's useful to ignore a case when inheritance will catch all the cases anyway.
- * <!-- end-user-doc -->
- * @return the new adapter.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredProperty
- * @generated
- */
- public Adapter createDeclaredPropertyAdapter() {
- return null;
- }
-
- /**
- * Creates a new adapter for an object of class '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredStaticProperty <em>Declared Static Property</em>}'.
- * <!-- begin-user-doc -->
- * This default implementation returns null so that we can easily ignore cases;
- * it's useful to ignore a case when inheritance will catch all the cases anyway.
- * <!-- end-user-doc -->
- * @return the new adapter.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredStaticProperty
- * @generated
- */
- public Adapter createDeclaredStaticPropertyAdapter() {
- return null;
- }
-
- /**
- * Creates a new adapter for an object of class '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredTypeParameter <em>Declared Type Parameter</em>}'.
- * <!-- begin-user-doc -->
- * This default implementation returns null so that we can easily ignore cases;
- * it's useful to ignore a case when inheritance will catch all the cases anyway.
- * <!-- end-user-doc -->
- * @return the new adapter.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredTypeParameter
- * @generated
- */
- public Adapter createDeclaredTypeParameterAdapter() {
- return null;
- }
-
- /**
- * Creates a new adapter for an object of class '{@link org.eclipse.xpand3.staticTypesystem.declaration.DeclaredParameter <em>Declared Parameter</em>}'.
- * <!-- begin-user-doc -->
- * This default implementation returns null so that we can easily ignore cases;
- * it's useful to ignore a case when inheritance will catch all the cases anyway.
- * <!-- end-user-doc -->
- * @return the new adapter.
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclaredParameter
- * @generated
- */
- public Adapter createDeclaredParameterAdapter() {
- return null;
- }
-
- /**
- * Creates a new adapter for an object of class '{@link org.eclipse.xpand3.staticTypesystem.AbstractNamedElement <em>Abstract Named Element</em>}'.
- * <!-- begin-user-doc -->
- * This default implementation returns null so that we can easily ignore cases;
- * it's useful to ignore a case when inheritance will catch all the cases anyway.
- * <!-- end-user-doc -->
- * @return the new adapter.
- * @see org.eclipse.xpand3.staticTypesystem.AbstractNamedElement
- * @generated
- */
- public Adapter createAbstractNamedElementAdapter() {
- return null;
- }
-
- /**
- * Creates a new adapter for the default case.
- * <!-- begin-user-doc -->
- * This default implementation returns null.
- * <!-- end-user-doc -->
- * @return the new adapter.
- * @generated
- */
- public Adapter createEObjectAdapter() {
- return null;
- }
-
-} //DeclarationAdapterFactory
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/util/DeclarationSwitch.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/util/DeclarationSwitch.java
deleted file mode 100644
index 466d46a..0000000
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/util/DeclarationSwitch.java
+++ /dev/null
@@ -1,280 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: DeclarationSwitch.java,v 1.1 2008/03/04 10:53:03 sefftinge Exp $
- */
-package org.eclipse.xpand3.staticTypesystem.declaration.util;
-
-import java.util.List;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-
-import org.eclipse.xpand3.staticTypesystem.AbstractNamedElement;
-
-import org.eclipse.xpand3.staticTypesystem.declaration.*;
-
-/**
- * <!-- begin-user-doc -->
- * The <b>Switch</b> for the model's inheritance hierarchy.
- * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
- * to invoke the <code>caseXXX</code> method for each class of the model,
- * starting with the actual class of the object
- * and proceeding up the inheritance hierarchy
- * until a non-null result is returned,
- * which is the result of the switch.
- * <!-- end-user-doc -->
- * @see org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage
- * @generated
- */
-public class DeclarationSwitch<T> {
- /**
- * The cached model package
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- protected static DeclarationPackage modelPackage;
-
- /**
- * Creates an instance of the switch.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public DeclarationSwitch() {
- if (modelPackage == null) {
- modelPackage = DeclarationPackage.eINSTANCE;
- }
- }
-
- /**
- * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the first non-null result returned by a <code>caseXXX</code> call.
- * @generated
- */
- public T doSwitch(EObject theEObject) {
- return doSwitch(theEObject.eClass(), theEObject);
- }
-
- /**
- * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the first non-null result returned by a <code>caseXXX</code> call.
- * @generated
- */
- protected T doSwitch(EClass theEClass, EObject theEObject) {
- if (theEClass.eContainer() == modelPackage) {
- return doSwitch(theEClass.getClassifierID(), theEObject);
- }
- else {
- List<EClass> eSuperTypes = theEClass.getESuperTypes();
- return
- eSuperTypes.isEmpty() ?
- defaultCase(theEObject) :
- doSwitch(eSuperTypes.get(0), theEObject);
- }
- }
-
- /**
- * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the first non-null result returned by a <code>caseXXX</code> call.
- * @generated
- */
- protected T doSwitch(int classifierID, EObject theEObject) {
- switch (classifierID) {
- case DeclarationPackage.DECLARED_TYPE: {
- DeclaredType declaredType = (DeclaredType)theEObject;
- T result = caseDeclaredType(declaredType);
- if (result == null) result = caseAbstractNamedElement(declaredType);
- if (result == null) result = defaultCase(theEObject);
- return result;
- }
- case DeclarationPackage.DECLARED_OPERATION: {
- DeclaredOperation declaredOperation = (DeclaredOperation)theEObject;
- T result = caseDeclaredOperation(declaredOperation);
- if (result == null) result = caseAbstractNamedElement(declaredOperation);
- if (result == null) result = defaultCase(theEObject);
- return result;
- }
- case DeclarationPackage.DECLARED_FUNCTION: {
- DeclaredFunction declaredFunction = (DeclaredFunction)theEObject;
- T result = caseDeclaredFunction(declaredFunction);
- if (result == null) result = caseAbstractNamedElement(declaredFunction);
- if (result == null) result = defaultCase(theEObject);
- return result;
- }
- case DeclarationPackage.DECLARED_PROPERTY: {
- DeclaredProperty declaredProperty = (DeclaredProperty)theEObject;
- T result = caseDeclaredProperty(declaredProperty);
- if (result == null) result = caseAbstractNamedElement(declaredProperty);
- if (result == null) result = defaultCase(theEObject);
- return result;
- }
- case DeclarationPackage.DECLARED_STATIC_PROPERTY: {
- DeclaredStaticProperty declaredStaticProperty = (DeclaredStaticProperty)theEObject;
- T result = caseDeclaredStaticProperty(declaredStaticProperty);
- if (result == null) result = caseAbstractNamedElement(declaredStaticProperty);
- if (result == null) result = defaultCase(theEObject);
- return result;
- }
- case DeclarationPackage.DECLARED_TYPE_PARAMETER: {
- DeclaredTypeParameter declaredTypeParameter = (DeclaredTypeParameter)theEObject;
- T result = caseDeclaredTypeParameter(declaredTypeParameter);
- if (result == null) result = caseAbstractNamedElement(declaredTypeParameter);
- if (result == null) result = defaultCase(theEObject);
- return result;
- }
- case DeclarationPackage.DECLARED_PARAMETER: {
- DeclaredParameter declaredParameter = (DeclaredParameter)theEObject;
- T result = caseDeclaredParameter(declaredParameter);
- if (result == null) result = caseAbstractNamedElement(declaredParameter);
- if (result == null) result = defaultCase(theEObject);
- return result;
- }
- default: return defaultCase(theEObject);
- }
- }
-
- /**
- * Returns the result of interpreting the object as an instance of '<em>Declared Type</em>'.
- * <!-- begin-user-doc -->
- * This implementation returns null;
- * returning a non-null result will terminate the switch.
- * <!-- end-user-doc -->
- * @param object the target of the switch.
- * @return the result of interpreting the object as an instance of '<em>Declared Type</em>'.
- * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
- * @generated
- */
- public T caseDeclaredType(DeclaredType object) {
- return null;
- }
-
- /**
- * Returns the result of interpreting the object as an instance of '<em>Declared Operation</em>'.
- * <!-- begin-user-doc -->
- * This implementation returns null;
- * returning a non-null result will terminate the switch.
- * <!-- end-user-doc -->
- * @param object the target of the switch.
- * @return the result of interpreting the object as an instance of '<em>Declared Operation</em>'.
- * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
- * @generated
- */
- public T caseDeclaredOperation(DeclaredOperation object) {
- return null;
- }
-
- /**
- * Returns the result of interpreting the object as an instance of '<em>Declared Function</em>'.
- * <!-- begin-user-doc -->
- * This implementation returns null;
- * returning a non-null result will terminate the switch.
- * <!-- end-user-doc -->
- * @param object the target of the switch.
- * @return the result of interpreting the object as an instance of '<em>Declared Function</em>'.
- * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
- * @generated
- */
- public T caseDeclaredFunction(DeclaredFunction object) {
- return null;
- }
-
- /**
- * Returns the result of interpreting the object as an instance of '<em>Declared Property</em>'.
- * <!-- begin-user-doc -->
- * This implementation returns null;
- * returning a non-null result will terminate the switch.
- * <!-- end-user-doc -->
- * @param object the target of the switch.
- * @return the result of interpreting the object as an instance of '<em>Declared Property</em>'.
- * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
- * @generated
- */
- public T caseDeclaredProperty(DeclaredProperty object) {
- return null;
- }
-
- /**
- * Returns the result of interpreting the object as an instance of '<em>Declared Static Property</em>'.
- * <!-- begin-user-doc -->
- * This implementation returns null;
- * returning a non-null result will terminate the switch.
- * <!-- end-user-doc -->
- * @param object the target of the switch.
- * @return the result of interpreting the object as an instance of '<em>Declared Static Property</em>'.
- * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
- * @generated
- */
- public T caseDeclaredStaticProperty(DeclaredStaticProperty object) {
- return null;
- }
-
- /**
- * Returns the result of interpreting the object as an instance of '<em>Declared Type Parameter</em>'.
- * <!-- begin-user-doc -->
- * This implementation returns null;
- * returning a non-null result will terminate the switch.
- * <!-- end-user-doc -->
- * @param object the target of the switch.
- * @return the result of interpreting the object as an instance of '<em>Declared Type Parameter</em>'.
- * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
- * @generated
- */
- public T caseDeclaredTypeParameter(DeclaredTypeParameter object) {
- return null;
- }
-
- /**
- * Returns the result of interpreting the object as an instance of '<em>Declared Parameter</em>'.
- * <!-- begin-user-doc -->
- * This implementation returns null;
- * returning a non-null result will terminate the switch.
- * <!-- end-user-doc -->
- * @param object the target of the switch.
- * @return the result of interpreting the object as an instance of '<em>Declared Parameter</em>'.
- * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
- * @generated
- */
- public T caseDeclaredParameter(DeclaredParameter object) {
- return null;
- }
-
- /**
- * Returns the result of interpreting the object as an instance of '<em>Abstract Named Element</em>'.
- * <!-- begin-user-doc -->
- * This implementation returns null;
- * returning a non-null result will terminate the switch.
- * <!-- end-user-doc -->
- * @param object the target of the switch.
- * @return the result of interpreting the object as an instance of '<em>Abstract Named Element</em>'.
- * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
- * @generated
- */
- public T caseAbstractNamedElement(AbstractNamedElement object) {
- return null;
- }
-
- /**
- * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
- * <!-- begin-user-doc -->
- * This implementation returns null;
- * returning a non-null result will terminate the switch, but this is the last case anyway.
- * <!-- end-user-doc -->
- * @param object the target of the switch.
- * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
- * @see #doSwitch(org.eclipse.emf.ecore.EObject)
- * @generated
- */
- public T defaultCase(EObject object) {
- return null;
- }
-
-} //DeclarationSwitch
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/AbstractNamedElementImpl.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/AbstractNamedElementImpl.java
index 7b2244b..bf15881 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/AbstractNamedElementImpl.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/AbstractNamedElementImpl.java
@@ -2,7 +2,7 @@
* <copyright>
* </copyright>
*
- * $Id: AbstractNamedElementImpl.java,v 1.1 2008/03/04 10:53:02 sefftinge Exp $
+ * $Id: AbstractNamedElementImpl.java,v 1.2 2008/03/04 14:03:38 sefftinge Exp $
*/
package org.eclipse.xpand3.staticTypesystem.impl;
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/AbstractTypeReferenceImpl.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/AbstractTypeReferenceImpl.java
index 2e3dfd7..d252125 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/AbstractTypeReferenceImpl.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/AbstractTypeReferenceImpl.java
@@ -2,7 +2,7 @@
* <copyright>
* </copyright>
*
- * $Id: AbstractTypeReferenceImpl.java,v 1.1 2008/03/04 10:53:02 sefftinge Exp $
+ * $Id: AbstractTypeReferenceImpl.java,v 1.2 2008/03/04 14:03:38 sefftinge Exp $
*/
package org.eclipse.xpand3.staticTypesystem.impl;
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredFunctionImpl.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredFunctionImpl.java
index 7c58422..32e7450 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredFunctionImpl.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredFunctionImpl.java
@@ -2,9 +2,9 @@
* <copyright>
* </copyright>
*
- * $Id: DeclaredFunctionImpl.java,v 1.1 2008/03/04 10:53:02 sefftinge Exp $
+ * $Id: DeclaredFunctionImpl.java,v 1.1 2008/03/04 14:03:38 sefftinge Exp $
*/
-package org.eclipse.xpand3.staticTypesystem.declaration.impl;
+package org.eclipse.xpand3.staticTypesystem.impl;
import java.util.Collection;
@@ -21,13 +21,11 @@ import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.emf.ecore.util.EObjectContainmentEList;
import org.eclipse.emf.ecore.util.InternalEList;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredFunction;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredParameter;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredTypeParameter;
-
-import org.eclipse.xpand3.staticTypesystem.impl.AbstractNamedElementImpl;
+import org.eclipse.xpand3.staticTypesystem.DeclaredFunction;
+import org.eclipse.xpand3.staticTypesystem.DeclaredParameter;
+import org.eclipse.xpand3.staticTypesystem.DeclaredType;
+import org.eclipse.xpand3.staticTypesystem.DeclaredTypeParameter;
+import org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage;
/**
* <!-- begin-user-doc -->
@@ -36,9 +34,9 @@ import org.eclipse.xpand3.staticTypesystem.impl.AbstractNamedElementImpl;
* <p>
* The following features are implemented:
* <ul>
- * <li>{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredFunctionImpl#getDeclaredParameters <em>Declared Parameters</em>}</li>
- * <li>{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredFunctionImpl#getDeclaredTypeParameters <em>Declared Type Parameters</em>}</li>
- * <li>{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredFunctionImpl#getReturnType <em>Return Type</em>}</li>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredFunctionImpl#getDeclaredParameters <em>Declared Parameters</em>}</li>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredFunctionImpl#getDeclaredTypeParameters <em>Declared Type Parameters</em>}</li>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredFunctionImpl#getReturnType <em>Return Type</em>}</li>
* </ul>
* </p>
*
@@ -91,7 +89,7 @@ public class DeclaredFunctionImpl extends AbstractNamedElementImpl implements De
*/
@Override
protected EClass eStaticClass() {
- return DeclarationPackage.Literals.DECLARED_FUNCTION;
+ return StaticTypesystemPackage.Literals.DECLARED_FUNCTION;
}
/**
@@ -101,7 +99,7 @@ public class DeclaredFunctionImpl extends AbstractNamedElementImpl implements De
*/
public EList<DeclaredParameter> getDeclaredParameters() {
if (declaredParameters == null) {
- declaredParameters = new EObjectContainmentEList<DeclaredParameter>(DeclaredParameter.class, this, DeclarationPackage.DECLARED_FUNCTION__DECLARED_PARAMETERS);
+ declaredParameters = new EObjectContainmentEList<DeclaredParameter>(DeclaredParameter.class, this, StaticTypesystemPackage.DECLARED_FUNCTION__DECLARED_PARAMETERS);
}
return declaredParameters;
}
@@ -113,7 +111,7 @@ public class DeclaredFunctionImpl extends AbstractNamedElementImpl implements De
*/
public EList<DeclaredTypeParameter> getDeclaredTypeParameters() {
if (declaredTypeParameters == null) {
- declaredTypeParameters = new EObjectContainmentEList<DeclaredTypeParameter>(DeclaredTypeParameter.class, this, DeclarationPackage.DECLARED_FUNCTION__DECLARED_TYPE_PARAMETERS);
+ declaredTypeParameters = new EObjectContainmentEList<DeclaredTypeParameter>(DeclaredTypeParameter.class, this, StaticTypesystemPackage.DECLARED_FUNCTION__DECLARED_TYPE_PARAMETERS);
}
return declaredTypeParameters;
}
@@ -129,7 +127,7 @@ public class DeclaredFunctionImpl extends AbstractNamedElementImpl implements De
returnType = (DeclaredType)eResolveProxy(oldReturnType);
if (returnType != oldReturnType) {
if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.RESOLVE, DeclarationPackage.DECLARED_FUNCTION__RETURN_TYPE, oldReturnType, returnType));
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, StaticTypesystemPackage.DECLARED_FUNCTION__RETURN_TYPE, oldReturnType, returnType));
}
}
return returnType;
@@ -153,7 +151,7 @@ public class DeclaredFunctionImpl extends AbstractNamedElementImpl implements De
DeclaredType oldReturnType = returnType;
returnType = newReturnType;
if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, DeclarationPackage.DECLARED_FUNCTION__RETURN_TYPE, oldReturnType, returnType));
+ eNotify(new ENotificationImpl(this, Notification.SET, StaticTypesystemPackage.DECLARED_FUNCTION__RETURN_TYPE, oldReturnType, returnType));
}
/**
@@ -164,9 +162,9 @@ public class DeclaredFunctionImpl extends AbstractNamedElementImpl implements De
@Override
public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
switch (featureID) {
- case DeclarationPackage.DECLARED_FUNCTION__DECLARED_PARAMETERS:
+ case StaticTypesystemPackage.DECLARED_FUNCTION__DECLARED_PARAMETERS:
return ((InternalEList<?>)getDeclaredParameters()).basicRemove(otherEnd, msgs);
- case DeclarationPackage.DECLARED_FUNCTION__DECLARED_TYPE_PARAMETERS:
+ case StaticTypesystemPackage.DECLARED_FUNCTION__DECLARED_TYPE_PARAMETERS:
return ((InternalEList<?>)getDeclaredTypeParameters()).basicRemove(otherEnd, msgs);
}
return super.eInverseRemove(otherEnd, featureID, msgs);
@@ -180,11 +178,11 @@ public class DeclaredFunctionImpl extends AbstractNamedElementImpl implements De
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
- case DeclarationPackage.DECLARED_FUNCTION__DECLARED_PARAMETERS:
+ case StaticTypesystemPackage.DECLARED_FUNCTION__DECLARED_PARAMETERS:
return getDeclaredParameters();
- case DeclarationPackage.DECLARED_FUNCTION__DECLARED_TYPE_PARAMETERS:
+ case StaticTypesystemPackage.DECLARED_FUNCTION__DECLARED_TYPE_PARAMETERS:
return getDeclaredTypeParameters();
- case DeclarationPackage.DECLARED_FUNCTION__RETURN_TYPE:
+ case StaticTypesystemPackage.DECLARED_FUNCTION__RETURN_TYPE:
if (resolve) return getReturnType();
return basicGetReturnType();
}
@@ -200,15 +198,15 @@ public class DeclaredFunctionImpl extends AbstractNamedElementImpl implements De
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
- case DeclarationPackage.DECLARED_FUNCTION__DECLARED_PARAMETERS:
+ case StaticTypesystemPackage.DECLARED_FUNCTION__DECLARED_PARAMETERS:
getDeclaredParameters().clear();
getDeclaredParameters().addAll((Collection<? extends DeclaredParameter>)newValue);
return;
- case DeclarationPackage.DECLARED_FUNCTION__DECLARED_TYPE_PARAMETERS:
+ case StaticTypesystemPackage.DECLARED_FUNCTION__DECLARED_TYPE_PARAMETERS:
getDeclaredTypeParameters().clear();
getDeclaredTypeParameters().addAll((Collection<? extends DeclaredTypeParameter>)newValue);
return;
- case DeclarationPackage.DECLARED_FUNCTION__RETURN_TYPE:
+ case StaticTypesystemPackage.DECLARED_FUNCTION__RETURN_TYPE:
setReturnType((DeclaredType)newValue);
return;
}
@@ -223,13 +221,13 @@ public class DeclaredFunctionImpl extends AbstractNamedElementImpl implements De
@Override
public void eUnset(int featureID) {
switch (featureID) {
- case DeclarationPackage.DECLARED_FUNCTION__DECLARED_PARAMETERS:
+ case StaticTypesystemPackage.DECLARED_FUNCTION__DECLARED_PARAMETERS:
getDeclaredParameters().clear();
return;
- case DeclarationPackage.DECLARED_FUNCTION__DECLARED_TYPE_PARAMETERS:
+ case StaticTypesystemPackage.DECLARED_FUNCTION__DECLARED_TYPE_PARAMETERS:
getDeclaredTypeParameters().clear();
return;
- case DeclarationPackage.DECLARED_FUNCTION__RETURN_TYPE:
+ case StaticTypesystemPackage.DECLARED_FUNCTION__RETURN_TYPE:
setReturnType((DeclaredType)null);
return;
}
@@ -244,11 +242,11 @@ public class DeclaredFunctionImpl extends AbstractNamedElementImpl implements De
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
- case DeclarationPackage.DECLARED_FUNCTION__DECLARED_PARAMETERS:
+ case StaticTypesystemPackage.DECLARED_FUNCTION__DECLARED_PARAMETERS:
return declaredParameters != null && !declaredParameters.isEmpty();
- case DeclarationPackage.DECLARED_FUNCTION__DECLARED_TYPE_PARAMETERS:
+ case StaticTypesystemPackage.DECLARED_FUNCTION__DECLARED_TYPE_PARAMETERS:
return declaredTypeParameters != null && !declaredTypeParameters.isEmpty();
- case DeclarationPackage.DECLARED_FUNCTION__RETURN_TYPE:
+ case StaticTypesystemPackage.DECLARED_FUNCTION__RETURN_TYPE:
return returnType != null;
}
return super.eIsSet(featureID);
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredOperationImpl.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredOperationImpl.java
index 8799d59..e3a8f7a 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredOperationImpl.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredOperationImpl.java
@@ -2,9 +2,9 @@
* <copyright>
* </copyright>
*
- * $Id: DeclaredOperationImpl.java,v 1.1 2008/03/04 10:53:02 sefftinge Exp $
+ * $Id: DeclaredOperationImpl.java,v 1.1 2008/03/04 14:03:38 sefftinge Exp $
*/
-package org.eclipse.xpand3.staticTypesystem.declaration.impl;
+package org.eclipse.xpand3.staticTypesystem.impl;
import java.util.Collection;
@@ -22,12 +22,11 @@ import org.eclipse.emf.ecore.util.EObjectContainmentEList;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.emf.ecore.util.InternalEList;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredOperation;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredParameter;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType;
-
-import org.eclipse.xpand3.staticTypesystem.impl.AbstractNamedElementImpl;
+import org.eclipse.xpand3.staticTypesystem.AbstractTypeReference;
+import org.eclipse.xpand3.staticTypesystem.DeclaredOperation;
+import org.eclipse.xpand3.staticTypesystem.DeclaredParameter;
+import org.eclipse.xpand3.staticTypesystem.DeclaredType;
+import org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage;
/**
* <!-- begin-user-doc -->
@@ -36,9 +35,9 @@ import org.eclipse.xpand3.staticTypesystem.impl.AbstractNamedElementImpl;
* <p>
* The following features are implemented:
* <ul>
- * <li>{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredOperationImpl#getDeclaredParameters <em>Declared Parameters</em>}</li>
- * <li>{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredOperationImpl#getDeclaringType <em>Declaring Type</em>}</li>
- * <li>{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredOperationImpl#getReturnType <em>Return Type</em>}</li>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredOperationImpl#getDeclaredParameters <em>Declared Parameters</em>}</li>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredOperationImpl#getDeclaringType <em>Declaring Type</em>}</li>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredOperationImpl#getReturnType <em>Return Type</em>}</li>
* </ul>
* </p>
*
@@ -63,7 +62,7 @@ public class DeclaredOperationImpl extends AbstractNamedElementImpl implements D
* @generated
* @ordered
*/
- protected DeclaredType returnType;
+ protected AbstractTypeReference returnType;
/**
* <!-- begin-user-doc -->
@@ -81,7 +80,7 @@ public class DeclaredOperationImpl extends AbstractNamedElementImpl implements D
*/
@Override
protected EClass eStaticClass() {
- return DeclarationPackage.Literals.DECLARED_OPERATION;
+ return StaticTypesystemPackage.Literals.DECLARED_OPERATION;
}
/**
@@ -91,7 +90,7 @@ public class DeclaredOperationImpl extends AbstractNamedElementImpl implements D
*/
public EList<DeclaredParameter> getDeclaredParameters() {
if (declaredParameters == null) {
- declaredParameters = new EObjectContainmentEList<DeclaredParameter>(DeclaredParameter.class, this, DeclarationPackage.DECLARED_OPERATION__DECLARED_PARAMETERS);
+ declaredParameters = new EObjectContainmentEList<DeclaredParameter>(DeclaredParameter.class, this, StaticTypesystemPackage.DECLARED_OPERATION__DECLARED_PARAMETERS);
}
return declaredParameters;
}
@@ -102,7 +101,7 @@ public class DeclaredOperationImpl extends AbstractNamedElementImpl implements D
* @generated
*/
public DeclaredType getDeclaringType() {
- if (eContainerFeatureID != DeclarationPackage.DECLARED_OPERATION__DECLARING_TYPE) return null;
+ if (eContainerFeatureID != StaticTypesystemPackage.DECLARED_OPERATION__DECLARING_TYPE) return null;
return (DeclaredType)eContainer();
}
@@ -112,7 +111,7 @@ public class DeclaredOperationImpl extends AbstractNamedElementImpl implements D
* @generated
*/
public NotificationChain basicSetDeclaringType(DeclaredType newDeclaringType, NotificationChain msgs) {
- msgs = eBasicSetContainer((InternalEObject)newDeclaringType, DeclarationPackage.DECLARED_OPERATION__DECLARING_TYPE, msgs);
+ msgs = eBasicSetContainer((InternalEObject)newDeclaringType, StaticTypesystemPackage.DECLARED_OPERATION__DECLARING_TYPE, msgs);
return msgs;
}
@@ -122,19 +121,19 @@ public class DeclaredOperationImpl extends AbstractNamedElementImpl implements D
* @generated
*/
public void setDeclaringType(DeclaredType newDeclaringType) {
- if (newDeclaringType != eInternalContainer() || (eContainerFeatureID != DeclarationPackage.DECLARED_OPERATION__DECLARING_TYPE && newDeclaringType != null)) {
+ if (newDeclaringType != eInternalContainer() || (eContainerFeatureID != StaticTypesystemPackage.DECLARED_OPERATION__DECLARING_TYPE && newDeclaringType != null)) {
if (EcoreUtil.isAncestor(this, newDeclaringType))
throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
NotificationChain msgs = null;
if (eInternalContainer() != null)
msgs = eBasicRemoveFromContainer(msgs);
if (newDeclaringType != null)
- msgs = ((InternalEObject)newDeclaringType).eInverseAdd(this, DeclarationPackage.DECLARED_TYPE__OPERATIONS, DeclaredType.class, msgs);
+ msgs = ((InternalEObject)newDeclaringType).eInverseAdd(this, StaticTypesystemPackage.DECLARED_TYPE__OPERATIONS, DeclaredType.class, msgs);
msgs = basicSetDeclaringType(newDeclaringType, msgs);
if (msgs != null) msgs.dispatch();
}
else if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, DeclarationPackage.DECLARED_OPERATION__DECLARING_TYPE, newDeclaringType, newDeclaringType));
+ eNotify(new ENotificationImpl(this, Notification.SET, StaticTypesystemPackage.DECLARED_OPERATION__DECLARING_TYPE, newDeclaringType, newDeclaringType));
}
/**
@@ -142,13 +141,13 @@ public class DeclaredOperationImpl extends AbstractNamedElementImpl implements D
* <!-- end-user-doc -->
* @generated
*/
- public DeclaredType getReturnType() {
+ public AbstractTypeReference getReturnType() {
if (returnType != null && returnType.eIsProxy()) {
InternalEObject oldReturnType = (InternalEObject)returnType;
- returnType = (DeclaredType)eResolveProxy(oldReturnType);
+ returnType = (AbstractTypeReference)eResolveProxy(oldReturnType);
if (returnType != oldReturnType) {
if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.RESOLVE, DeclarationPackage.DECLARED_OPERATION__RETURN_TYPE, oldReturnType, returnType));
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, StaticTypesystemPackage.DECLARED_OPERATION__RETURN_TYPE, oldReturnType, returnType));
}
}
return returnType;
@@ -159,7 +158,7 @@ public class DeclaredOperationImpl extends AbstractNamedElementImpl implements D
* <!-- end-user-doc -->
* @generated
*/
- public DeclaredType basicGetReturnType() {
+ public AbstractTypeReference basicGetReturnType() {
return returnType;
}
@@ -168,11 +167,11 @@ public class DeclaredOperationImpl extends AbstractNamedElementImpl implements D
* <!-- end-user-doc -->
* @generated
*/
- public void setReturnType(DeclaredType newReturnType) {
- DeclaredType oldReturnType = returnType;
+ public void setReturnType(AbstractTypeReference newReturnType) {
+ AbstractTypeReference oldReturnType = returnType;
returnType = newReturnType;
if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, DeclarationPackage.DECLARED_OPERATION__RETURN_TYPE, oldReturnType, returnType));
+ eNotify(new ENotificationImpl(this, Notification.SET, StaticTypesystemPackage.DECLARED_OPERATION__RETURN_TYPE, oldReturnType, returnType));
}
/**
@@ -183,7 +182,7 @@ public class DeclaredOperationImpl extends AbstractNamedElementImpl implements D
@Override
public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
switch (featureID) {
- case DeclarationPackage.DECLARED_OPERATION__DECLARING_TYPE:
+ case StaticTypesystemPackage.DECLARED_OPERATION__DECLARING_TYPE:
if (eInternalContainer() != null)
msgs = eBasicRemoveFromContainer(msgs);
return basicSetDeclaringType((DeclaredType)otherEnd, msgs);
@@ -199,9 +198,9 @@ public class DeclaredOperationImpl extends AbstractNamedElementImpl implements D
@Override
public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
switch (featureID) {
- case DeclarationPackage.DECLARED_OPERATION__DECLARED_PARAMETERS:
+ case StaticTypesystemPackage.DECLARED_OPERATION__DECLARED_PARAMETERS:
return ((InternalEList<?>)getDeclaredParameters()).basicRemove(otherEnd, msgs);
- case DeclarationPackage.DECLARED_OPERATION__DECLARING_TYPE:
+ case StaticTypesystemPackage.DECLARED_OPERATION__DECLARING_TYPE:
return basicSetDeclaringType(null, msgs);
}
return super.eInverseRemove(otherEnd, featureID, msgs);
@@ -215,8 +214,8 @@ public class DeclaredOperationImpl extends AbstractNamedElementImpl implements D
@Override
public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
switch (eContainerFeatureID) {
- case DeclarationPackage.DECLARED_OPERATION__DECLARING_TYPE:
- return eInternalContainer().eInverseRemove(this, DeclarationPackage.DECLARED_TYPE__OPERATIONS, DeclaredType.class, msgs);
+ case StaticTypesystemPackage.DECLARED_OPERATION__DECLARING_TYPE:
+ return eInternalContainer().eInverseRemove(this, StaticTypesystemPackage.DECLARED_TYPE__OPERATIONS, DeclaredType.class, msgs);
}
return super.eBasicRemoveFromContainerFeature(msgs);
}
@@ -229,11 +228,11 @@ public class DeclaredOperationImpl extends AbstractNamedElementImpl implements D
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
- case DeclarationPackage.DECLARED_OPERATION__DECLARED_PARAMETERS:
+ case StaticTypesystemPackage.DECLARED_OPERATION__DECLARED_PARAMETERS:
return getDeclaredParameters();
- case DeclarationPackage.DECLARED_OPERATION__DECLARING_TYPE:
+ case StaticTypesystemPackage.DECLARED_OPERATION__DECLARING_TYPE:
return getDeclaringType();
- case DeclarationPackage.DECLARED_OPERATION__RETURN_TYPE:
+ case StaticTypesystemPackage.DECLARED_OPERATION__RETURN_TYPE:
if (resolve) return getReturnType();
return basicGetReturnType();
}
@@ -249,15 +248,15 @@ public class DeclaredOperationImpl extends AbstractNamedElementImpl implements D
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
- case DeclarationPackage.DECLARED_OPERATION__DECLARED_PARAMETERS:
+ case StaticTypesystemPackage.DECLARED_OPERATION__DECLARED_PARAMETERS:
getDeclaredParameters().clear();
getDeclaredParameters().addAll((Collection<? extends DeclaredParameter>)newValue);
return;
- case DeclarationPackage.DECLARED_OPERATION__DECLARING_TYPE:
+ case StaticTypesystemPackage.DECLARED_OPERATION__DECLARING_TYPE:
setDeclaringType((DeclaredType)newValue);
return;
- case DeclarationPackage.DECLARED_OPERATION__RETURN_TYPE:
- setReturnType((DeclaredType)newValue);
+ case StaticTypesystemPackage.DECLARED_OPERATION__RETURN_TYPE:
+ setReturnType((AbstractTypeReference)newValue);
return;
}
super.eSet(featureID, newValue);
@@ -271,14 +270,14 @@ public class DeclaredOperationImpl extends AbstractNamedElementImpl implements D
@Override
public void eUnset(int featureID) {
switch (featureID) {
- case DeclarationPackage.DECLARED_OPERATION__DECLARED_PARAMETERS:
+ case StaticTypesystemPackage.DECLARED_OPERATION__DECLARED_PARAMETERS:
getDeclaredParameters().clear();
return;
- case DeclarationPackage.DECLARED_OPERATION__DECLARING_TYPE:
+ case StaticTypesystemPackage.DECLARED_OPERATION__DECLARING_TYPE:
setDeclaringType((DeclaredType)null);
return;
- case DeclarationPackage.DECLARED_OPERATION__RETURN_TYPE:
- setReturnType((DeclaredType)null);
+ case StaticTypesystemPackage.DECLARED_OPERATION__RETURN_TYPE:
+ setReturnType((AbstractTypeReference)null);
return;
}
super.eUnset(featureID);
@@ -292,11 +291,11 @@ public class DeclaredOperationImpl extends AbstractNamedElementImpl implements D
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
- case DeclarationPackage.DECLARED_OPERATION__DECLARED_PARAMETERS:
+ case StaticTypesystemPackage.DECLARED_OPERATION__DECLARED_PARAMETERS:
return declaredParameters != null && !declaredParameters.isEmpty();
- case DeclarationPackage.DECLARED_OPERATION__DECLARING_TYPE:
+ case StaticTypesystemPackage.DECLARED_OPERATION__DECLARING_TYPE:
return getDeclaringType() != null;
- case DeclarationPackage.DECLARED_OPERATION__RETURN_TYPE:
+ case StaticTypesystemPackage.DECLARED_OPERATION__RETURN_TYPE:
return returnType != null;
}
return super.eIsSet(featureID);
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredParameterImpl.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredParameterImpl.java
new file mode 100644
index 0000000..871ee90
--- /dev/null
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredParameterImpl.java
@@ -0,0 +1,158 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id: DeclaredParameterImpl.java,v 1.1 2008/03/04 14:03:38 sefftinge Exp $
+ */
+package org.eclipse.xpand3.staticTypesystem.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.xpand3.staticTypesystem.AbstractTypeReference;
+import org.eclipse.xpand3.staticTypesystem.DeclaredParameter;
+import org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Declared Parameter</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredParameterImpl#getType <em>Type</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class DeclaredParameterImpl extends AbstractNamedElementImpl implements DeclaredParameter {
+ /**
+ * The cached value of the '{@link #getType() <em>Type</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getType()
+ * @generated
+ * @ordered
+ */
+ protected AbstractTypeReference type;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DeclaredParameterImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return StaticTypesystemPackage.Literals.DECLARED_PARAMETER;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public AbstractTypeReference getType() {
+ if (type != null && type.eIsProxy()) {
+ InternalEObject oldType = (InternalEObject)type;
+ type = (AbstractTypeReference)eResolveProxy(oldType);
+ if (type != oldType) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, StaticTypesystemPackage.DECLARED_PARAMETER__TYPE, oldType, type));
+ }
+ }
+ return type;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public AbstractTypeReference basicGetType() {
+ return type;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setType(AbstractTypeReference newType) {
+ AbstractTypeReference oldType = type;
+ type = newType;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, StaticTypesystemPackage.DECLARED_PARAMETER__TYPE, oldType, type));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case StaticTypesystemPackage.DECLARED_PARAMETER__TYPE:
+ if (resolve) return getType();
+ return basicGetType();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case StaticTypesystemPackage.DECLARED_PARAMETER__TYPE:
+ setType((AbstractTypeReference)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case StaticTypesystemPackage.DECLARED_PARAMETER__TYPE:
+ setType((AbstractTypeReference)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case StaticTypesystemPackage.DECLARED_PARAMETER__TYPE:
+ return type != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //DeclaredParameterImpl
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredPropertyImpl.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredPropertyImpl.java
new file mode 100644
index 0000000..ebb1cc5
--- /dev/null
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredPropertyImpl.java
@@ -0,0 +1,158 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id: DeclaredPropertyImpl.java,v 1.1 2008/03/04 14:03:38 sefftinge Exp $
+ */
+package org.eclipse.xpand3.staticTypesystem.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.xpand3.staticTypesystem.AbstractTypeReference;
+import org.eclipse.xpand3.staticTypesystem.DeclaredProperty;
+import org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Declared Property</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredPropertyImpl#getType <em>Type</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class DeclaredPropertyImpl extends AbstractNamedElementImpl implements DeclaredProperty {
+ /**
+ * The cached value of the '{@link #getType() <em>Type</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getType()
+ * @generated
+ * @ordered
+ */
+ protected AbstractTypeReference type;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DeclaredPropertyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return StaticTypesystemPackage.Literals.DECLARED_PROPERTY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public AbstractTypeReference getType() {
+ if (type != null && type.eIsProxy()) {
+ InternalEObject oldType = (InternalEObject)type;
+ type = (AbstractTypeReference)eResolveProxy(oldType);
+ if (type != oldType) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, StaticTypesystemPackage.DECLARED_PROPERTY__TYPE, oldType, type));
+ }
+ }
+ return type;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public AbstractTypeReference basicGetType() {
+ return type;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setType(AbstractTypeReference newType) {
+ AbstractTypeReference oldType = type;
+ type = newType;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, StaticTypesystemPackage.DECLARED_PROPERTY__TYPE, oldType, type));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case StaticTypesystemPackage.DECLARED_PROPERTY__TYPE:
+ if (resolve) return getType();
+ return basicGetType();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case StaticTypesystemPackage.DECLARED_PROPERTY__TYPE:
+ setType((AbstractTypeReference)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case StaticTypesystemPackage.DECLARED_PROPERTY__TYPE:
+ setType((AbstractTypeReference)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case StaticTypesystemPackage.DECLARED_PROPERTY__TYPE:
+ return type != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //DeclaredPropertyImpl
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredStaticPropertyImpl.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredStaticPropertyImpl.java
new file mode 100644
index 0000000..248f142
--- /dev/null
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredStaticPropertyImpl.java
@@ -0,0 +1,158 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id: DeclaredStaticPropertyImpl.java,v 1.1 2008/03/04 14:03:38 sefftinge Exp $
+ */
+package org.eclipse.xpand3.staticTypesystem.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.xpand3.staticTypesystem.DeclaredStaticProperty;
+import org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage;
+import org.eclipse.xpand3.staticTypesystem.Type;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Declared Static Property</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredStaticPropertyImpl#getType <em>Type</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class DeclaredStaticPropertyImpl extends AbstractNamedElementImpl implements DeclaredStaticProperty {
+ /**
+ * The cached value of the '{@link #getType() <em>Type</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getType()
+ * @generated
+ * @ordered
+ */
+ protected Type type;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DeclaredStaticPropertyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return StaticTypesystemPackage.Literals.DECLARED_STATIC_PROPERTY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Type getType() {
+ if (type != null && type.eIsProxy()) {
+ InternalEObject oldType = (InternalEObject)type;
+ type = (Type)eResolveProxy(oldType);
+ if (type != oldType) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, StaticTypesystemPackage.DECLARED_STATIC_PROPERTY__TYPE, oldType, type));
+ }
+ }
+ return type;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Type basicGetType() {
+ return type;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setType(Type newType) {
+ Type oldType = type;
+ type = newType;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, StaticTypesystemPackage.DECLARED_STATIC_PROPERTY__TYPE, oldType, type));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case StaticTypesystemPackage.DECLARED_STATIC_PROPERTY__TYPE:
+ if (resolve) return getType();
+ return basicGetType();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case StaticTypesystemPackage.DECLARED_STATIC_PROPERTY__TYPE:
+ setType((Type)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case StaticTypesystemPackage.DECLARED_STATIC_PROPERTY__TYPE:
+ setType((Type)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case StaticTypesystemPackage.DECLARED_STATIC_PROPERTY__TYPE:
+ return type != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //DeclaredStaticPropertyImpl
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredTypeImpl.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredTypeImpl.java
index 90289ef..1f44f0e 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/declaration/impl/DeclaredTypeImpl.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredTypeImpl.java
@@ -2,9 +2,9 @@
* <copyright>
* </copyright>
*
- * $Id: DeclaredTypeImpl.java,v 1.2 2008/03/04 11:00:31 sefftinge Exp $
+ * $Id: DeclaredTypeImpl.java,v 1.1 2008/03/04 14:03:38 sefftinge Exp $
*/
-package org.eclipse.xpand3.staticTypesystem.declaration.impl;
+package org.eclipse.xpand3.staticTypesystem.impl;
import java.util.Collection;
@@ -17,18 +17,18 @@ import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
import org.eclipse.emf.ecore.util.EObjectContainmentEList;
import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
import org.eclipse.emf.ecore.util.InternalEList;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredOperation;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredProperty;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredStaticProperty;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredTypeParameter;
+import org.eclipse.xpand3.staticTypesystem.DeclaredOperation;
+import org.eclipse.xpand3.staticTypesystem.DeclaredProperty;
+import org.eclipse.xpand3.staticTypesystem.DeclaredStaticProperty;
+import org.eclipse.xpand3.staticTypesystem.DeclaredType;
+import org.eclipse.xpand3.staticTypesystem.DeclaredTypeParameter;
+import org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage;
-import org.eclipse.xpand3.staticTypesystem.impl.AbstractNamedElementImpl;
import org.eclipse.xtend.backend.common.BackendType;
/**
@@ -38,11 +38,11 @@ import org.eclipse.xtend.backend.common.BackendType;
* <p>
* The following features are implemented:
* <ul>
- * <li>{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredTypeImpl#getStaticProperties <em>Static Properties</em>}</li>
- * <li>{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredTypeImpl#getProperties <em>Properties</em>}</li>
- * <li>{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredTypeImpl#getOperations <em>Operations</em>}</li>
- * <li>{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredTypeImpl#getDeclaredTypeParameters <em>Declared Type Parameters</em>}</li>
- * <li>{@link org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclaredTypeImpl#getBackendType <em>Backend Type</em>}</li>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredTypeImpl#getStaticProperties <em>Static Properties</em>}</li>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredTypeImpl#getProperties <em>Properties</em>}</li>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredTypeImpl#getOperations <em>Operations</em>}</li>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredTypeImpl#getDeclaredTypeParameters <em>Declared Type Parameters</em>}</li>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredTypeImpl#getBackendType <em>Backend Type</em>}</li>
* </ul>
* </p>
*
@@ -125,7 +125,7 @@ public class DeclaredTypeImpl extends AbstractNamedElementImpl implements Declar
*/
@Override
protected EClass eStaticClass() {
- return DeclarationPackage.Literals.DECLARED_TYPE;
+ return StaticTypesystemPackage.Literals.DECLARED_TYPE;
}
/**
@@ -135,7 +135,7 @@ public class DeclaredTypeImpl extends AbstractNamedElementImpl implements Declar
*/
public EList<DeclaredStaticProperty> getStaticProperties() {
if (staticProperties == null) {
- staticProperties = new EObjectContainmentEList<DeclaredStaticProperty>(DeclaredStaticProperty.class, this, DeclarationPackage.DECLARED_TYPE__STATIC_PROPERTIES);
+ staticProperties = new EObjectContainmentEList<DeclaredStaticProperty>(DeclaredStaticProperty.class, this, StaticTypesystemPackage.DECLARED_TYPE__STATIC_PROPERTIES);
}
return staticProperties;
}
@@ -147,7 +147,7 @@ public class DeclaredTypeImpl extends AbstractNamedElementImpl implements Declar
*/
public EList<DeclaredProperty> getProperties() {
if (properties == null) {
- properties = new EObjectContainmentEList<DeclaredProperty>(DeclaredProperty.class, this, DeclarationPackage.DECLARED_TYPE__PROPERTIES);
+ properties = new EObjectContainmentEList<DeclaredProperty>(DeclaredProperty.class, this, StaticTypesystemPackage.DECLARED_TYPE__PROPERTIES);
}
return properties;
}
@@ -159,7 +159,7 @@ public class DeclaredTypeImpl extends AbstractNamedElementImpl implements Declar
*/
public EList<DeclaredOperation> getOperations() {
if (operations == null) {
- operations = new EObjectContainmentWithInverseEList<DeclaredOperation>(DeclaredOperation.class, this, DeclarationPackage.DECLARED_TYPE__OPERATIONS, DeclarationPackage.DECLARED_OPERATION__DECLARING_TYPE);
+ operations = new EObjectContainmentWithInverseEList<DeclaredOperation>(DeclaredOperation.class, this, StaticTypesystemPackage.DECLARED_TYPE__OPERATIONS, StaticTypesystemPackage.DECLARED_OPERATION__DECLARING_TYPE);
}
return operations;
}
@@ -171,7 +171,7 @@ public class DeclaredTypeImpl extends AbstractNamedElementImpl implements Declar
*/
public EList<DeclaredTypeParameter> getDeclaredTypeParameters() {
if (declaredTypeParameters == null) {
- declaredTypeParameters = new EObjectContainmentEList<DeclaredTypeParameter>(DeclaredTypeParameter.class, this, DeclarationPackage.DECLARED_TYPE__DECLARED_TYPE_PARAMETERS);
+ declaredTypeParameters = new EObjectContainmentEList<DeclaredTypeParameter>(DeclaredTypeParameter.class, this, StaticTypesystemPackage.DECLARED_TYPE__DECLARED_TYPE_PARAMETERS);
}
return declaredTypeParameters;
}
@@ -194,7 +194,7 @@ public class DeclaredTypeImpl extends AbstractNamedElementImpl implements Declar
BackendType oldBackendType = backendType;
backendType = newBackendType;
if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, DeclarationPackage.DECLARED_TYPE__BACKEND_TYPE, oldBackendType, backendType));
+ eNotify(new ENotificationImpl(this, Notification.SET, StaticTypesystemPackage.DECLARED_TYPE__BACKEND_TYPE, oldBackendType, backendType));
}
/**
@@ -206,7 +206,7 @@ public class DeclaredTypeImpl extends AbstractNamedElementImpl implements Declar
@Override
public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
switch (featureID) {
- case DeclarationPackage.DECLARED_TYPE__OPERATIONS:
+ case StaticTypesystemPackage.DECLARED_TYPE__OPERATIONS:
return ((InternalEList<InternalEObject>)(InternalEList<?>)getOperations()).basicAdd(otherEnd, msgs);
}
return super.eInverseAdd(otherEnd, featureID, msgs);
@@ -220,13 +220,13 @@ public class DeclaredTypeImpl extends AbstractNamedElementImpl implements Declar
@Override
public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
switch (featureID) {
- case DeclarationPackage.DECLARED_TYPE__STATIC_PROPERTIES:
+ case StaticTypesystemPackage.DECLARED_TYPE__STATIC_PROPERTIES:
return ((InternalEList<?>)getStaticProperties()).basicRemove(otherEnd, msgs);
- case DeclarationPackage.DECLARED_TYPE__PROPERTIES:
+ case StaticTypesystemPackage.DECLARED_TYPE__PROPERTIES:
return ((InternalEList<?>)getProperties()).basicRemove(otherEnd, msgs);
- case DeclarationPackage.DECLARED_TYPE__OPERATIONS:
+ case StaticTypesystemPackage.DECLARED_TYPE__OPERATIONS:
return ((InternalEList<?>)getOperations()).basicRemove(otherEnd, msgs);
- case DeclarationPackage.DECLARED_TYPE__DECLARED_TYPE_PARAMETERS:
+ case StaticTypesystemPackage.DECLARED_TYPE__DECLARED_TYPE_PARAMETERS:
return ((InternalEList<?>)getDeclaredTypeParameters()).basicRemove(otherEnd, msgs);
}
return super.eInverseRemove(otherEnd, featureID, msgs);
@@ -240,15 +240,15 @@ public class DeclaredTypeImpl extends AbstractNamedElementImpl implements Declar
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
- case DeclarationPackage.DECLARED_TYPE__STATIC_PROPERTIES:
+ case StaticTypesystemPackage.DECLARED_TYPE__STATIC_PROPERTIES:
return getStaticProperties();
- case DeclarationPackage.DECLARED_TYPE__PROPERTIES:
+ case StaticTypesystemPackage.DECLARED_TYPE__PROPERTIES:
return getProperties();
- case DeclarationPackage.DECLARED_TYPE__OPERATIONS:
+ case StaticTypesystemPackage.DECLARED_TYPE__OPERATIONS:
return getOperations();
- case DeclarationPackage.DECLARED_TYPE__DECLARED_TYPE_PARAMETERS:
+ case StaticTypesystemPackage.DECLARED_TYPE__DECLARED_TYPE_PARAMETERS:
return getDeclaredTypeParameters();
- case DeclarationPackage.DECLARED_TYPE__BACKEND_TYPE:
+ case StaticTypesystemPackage.DECLARED_TYPE__BACKEND_TYPE:
return getBackendType();
}
return super.eGet(featureID, resolve, coreType);
@@ -263,23 +263,23 @@ public class DeclaredTypeImpl extends AbstractNamedElementImpl implements Declar
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
- case DeclarationPackage.DECLARED_TYPE__STATIC_PROPERTIES:
+ case StaticTypesystemPackage.DECLARED_TYPE__STATIC_PROPERTIES:
getStaticProperties().clear();
getStaticProperties().addAll((Collection<? extends DeclaredStaticProperty>)newValue);
return;
- case DeclarationPackage.DECLARED_TYPE__PROPERTIES:
+ case StaticTypesystemPackage.DECLARED_TYPE__PROPERTIES:
getProperties().clear();
getProperties().addAll((Collection<? extends DeclaredProperty>)newValue);
return;
- case DeclarationPackage.DECLARED_TYPE__OPERATIONS:
+ case StaticTypesystemPackage.DECLARED_TYPE__OPERATIONS:
getOperations().clear();
getOperations().addAll((Collection<? extends DeclaredOperation>)newValue);
return;
- case DeclarationPackage.DECLARED_TYPE__DECLARED_TYPE_PARAMETERS:
+ case StaticTypesystemPackage.DECLARED_TYPE__DECLARED_TYPE_PARAMETERS:
getDeclaredTypeParameters().clear();
getDeclaredTypeParameters().addAll((Collection<? extends DeclaredTypeParameter>)newValue);
return;
- case DeclarationPackage.DECLARED_TYPE__BACKEND_TYPE:
+ case StaticTypesystemPackage.DECLARED_TYPE__BACKEND_TYPE:
setBackendType((BackendType)newValue);
return;
}
@@ -294,19 +294,19 @@ public class DeclaredTypeImpl extends AbstractNamedElementImpl implements Declar
@Override
public void eUnset(int featureID) {
switch (featureID) {
- case DeclarationPackage.DECLARED_TYPE__STATIC_PROPERTIES:
+ case StaticTypesystemPackage.DECLARED_TYPE__STATIC_PROPERTIES:
getStaticProperties().clear();
return;
- case DeclarationPackage.DECLARED_TYPE__PROPERTIES:
+ case StaticTypesystemPackage.DECLARED_TYPE__PROPERTIES:
getProperties().clear();
return;
- case DeclarationPackage.DECLARED_TYPE__OPERATIONS:
+ case StaticTypesystemPackage.DECLARED_TYPE__OPERATIONS:
getOperations().clear();
return;
- case DeclarationPackage.DECLARED_TYPE__DECLARED_TYPE_PARAMETERS:
+ case StaticTypesystemPackage.DECLARED_TYPE__DECLARED_TYPE_PARAMETERS:
getDeclaredTypeParameters().clear();
return;
- case DeclarationPackage.DECLARED_TYPE__BACKEND_TYPE:
+ case StaticTypesystemPackage.DECLARED_TYPE__BACKEND_TYPE:
setBackendType(BACKEND_TYPE_EDEFAULT);
return;
}
@@ -321,15 +321,15 @@ public class DeclaredTypeImpl extends AbstractNamedElementImpl implements Declar
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
- case DeclarationPackage.DECLARED_TYPE__STATIC_PROPERTIES:
+ case StaticTypesystemPackage.DECLARED_TYPE__STATIC_PROPERTIES:
return staticProperties != null && !staticProperties.isEmpty();
- case DeclarationPackage.DECLARED_TYPE__PROPERTIES:
+ case StaticTypesystemPackage.DECLARED_TYPE__PROPERTIES:
return properties != null && !properties.isEmpty();
- case DeclarationPackage.DECLARED_TYPE__OPERATIONS:
+ case StaticTypesystemPackage.DECLARED_TYPE__OPERATIONS:
return operations != null && !operations.isEmpty();
- case DeclarationPackage.DECLARED_TYPE__DECLARED_TYPE_PARAMETERS:
+ case StaticTypesystemPackage.DECLARED_TYPE__DECLARED_TYPE_PARAMETERS:
return declaredTypeParameters != null && !declaredTypeParameters.isEmpty();
- case DeclarationPackage.DECLARED_TYPE__BACKEND_TYPE:
+ case StaticTypesystemPackage.DECLARED_TYPE__BACKEND_TYPE:
return BACKEND_TYPE_EDEFAULT == null ? backendType != null : !BACKEND_TYPE_EDEFAULT.equals(backendType);
}
return super.eIsSet(featureID);
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredTypeParameterImpl.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredTypeParameterImpl.java
new file mode 100644
index 0000000..b54b036
--- /dev/null
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/DeclaredTypeParameterImpl.java
@@ -0,0 +1,133 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id: DeclaredTypeParameterImpl.java,v 1.1 2008/03/04 14:03:38 sefftinge Exp $
+ */
+package org.eclipse.xpand3.staticTypesystem.impl;
+
+import java.util.Collection;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.xpand3.staticTypesystem.AbstractTypeReference;
+import org.eclipse.xpand3.staticTypesystem.DeclaredTypeParameter;
+import org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Declared Type Parameter</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.xpand3.staticTypesystem.impl.DeclaredTypeParameterImpl#getUpperBounds <em>Upper Bounds</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class DeclaredTypeParameterImpl extends AbstractNamedElementImpl implements DeclaredTypeParameter {
+ /**
+ * The cached value of the '{@link #getUpperBounds() <em>Upper Bounds</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getUpperBounds()
+ * @generated
+ * @ordered
+ */
+ protected EList<AbstractTypeReference> upperBounds;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DeclaredTypeParameterImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return StaticTypesystemPackage.Literals.DECLARED_TYPE_PARAMETER;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<AbstractTypeReference> getUpperBounds() {
+ if (upperBounds == null) {
+ upperBounds = new EObjectResolvingEList<AbstractTypeReference>(AbstractTypeReference.class, this, StaticTypesystemPackage.DECLARED_TYPE_PARAMETER__UPPER_BOUNDS);
+ }
+ return upperBounds;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case StaticTypesystemPackage.DECLARED_TYPE_PARAMETER__UPPER_BOUNDS:
+ return getUpperBounds();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case StaticTypesystemPackage.DECLARED_TYPE_PARAMETER__UPPER_BOUNDS:
+ getUpperBounds().clear();
+ getUpperBounds().addAll((Collection<? extends AbstractTypeReference>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case StaticTypesystemPackage.DECLARED_TYPE_PARAMETER__UPPER_BOUNDS:
+ getUpperBounds().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case StaticTypesystemPackage.DECLARED_TYPE_PARAMETER__UPPER_BOUNDS:
+ return upperBounds != null && !upperBounds.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //DeclaredTypeParameterImpl
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/FunctionTypeImpl.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/FunctionTypeImpl.java
index 56c9688..0322426 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/FunctionTypeImpl.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/FunctionTypeImpl.java
@@ -2,7 +2,7 @@
* <copyright>
* </copyright>
*
- * $Id: FunctionTypeImpl.java,v 1.1 2008/03/04 10:53:02 sefftinge Exp $
+ * $Id: FunctionTypeImpl.java,v 1.2 2008/03/04 14:03:38 sefftinge Exp $
*/
package org.eclipse.xpand3.staticTypesystem.impl;
@@ -20,11 +20,10 @@ import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.emf.ecore.util.EObjectResolvingEList;
import org.eclipse.xpand3.staticTypesystem.AbstractTypeReference;
+import org.eclipse.xpand3.staticTypesystem.DeclaredFunction;
import org.eclipse.xpand3.staticTypesystem.FunctionType;
import org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredFunction;
-
/**
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Function Type</b></em>'.
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/StaticTypesystemFactoryImpl.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/StaticTypesystemFactoryImpl.java
index e4ae03c..90c1fc2 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/StaticTypesystemFactoryImpl.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/StaticTypesystemFactoryImpl.java
@@ -2,7 +2,7 @@
* <copyright>
* </copyright>
*
- * $Id: StaticTypesystemFactoryImpl.java,v 1.2 2008/03/04 11:00:31 sefftinge Exp $
+ * $Id: StaticTypesystemFactoryImpl.java,v 1.3 2008/03/04 14:03:38 sefftinge Exp $
*/
package org.eclipse.xpand3.staticTypesystem.impl;
@@ -16,6 +16,7 @@ import org.eclipse.emf.ecore.impl.EFactoryImpl;
import org.eclipse.emf.ecore.plugin.EcorePlugin;
import org.eclipse.xpand3.staticTypesystem.*;
+
import org.eclipse.xtend.backend.common.BackendType;
/**
@@ -67,6 +68,13 @@ public class StaticTypesystemFactoryImpl extends EFactoryImpl implements StaticT
case StaticTypesystemPackage.VOID_TYPE: return createVoidType();
case StaticTypesystemPackage.WILDCARD_TYPE: return createWildcardType();
case StaticTypesystemPackage.FUNCTION_TYPE: return createFunctionType();
+ case StaticTypesystemPackage.DECLARED_TYPE: return createDeclaredType();
+ case StaticTypesystemPackage.DECLARED_OPERATION: return createDeclaredOperation();
+ case StaticTypesystemPackage.DECLARED_FUNCTION: return createDeclaredFunction();
+ case StaticTypesystemPackage.DECLARED_PROPERTY: return createDeclaredProperty();
+ case StaticTypesystemPackage.DECLARED_STATIC_PROPERTY: return createDeclaredStaticProperty();
+ case StaticTypesystemPackage.DECLARED_TYPE_PARAMETER: return createDeclaredTypeParameter();
+ case StaticTypesystemPackage.DECLARED_PARAMETER: return createDeclaredParameter();
default:
throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
}
@@ -157,6 +165,76 @@ public class StaticTypesystemFactoryImpl extends EFactoryImpl implements StaticT
* <!-- end-user-doc -->
* @generated
*/
+ public DeclaredType createDeclaredType() {
+ DeclaredTypeImpl declaredType = new DeclaredTypeImpl();
+ return declaredType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DeclaredOperation createDeclaredOperation() {
+ DeclaredOperationImpl declaredOperation = new DeclaredOperationImpl();
+ return declaredOperation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DeclaredFunction createDeclaredFunction() {
+ DeclaredFunctionImpl declaredFunction = new DeclaredFunctionImpl();
+ return declaredFunction;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DeclaredProperty createDeclaredProperty() {
+ DeclaredPropertyImpl declaredProperty = new DeclaredPropertyImpl();
+ return declaredProperty;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DeclaredStaticProperty createDeclaredStaticProperty() {
+ DeclaredStaticPropertyImpl declaredStaticProperty = new DeclaredStaticPropertyImpl();
+ return declaredStaticProperty;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DeclaredTypeParameter createDeclaredTypeParameter() {
+ DeclaredTypeParameterImpl declaredTypeParameter = new DeclaredTypeParameterImpl();
+ return declaredTypeParameter;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DeclaredParameter createDeclaredParameter() {
+ DeclaredParameterImpl declaredParameter = new DeclaredParameterImpl();
+ return declaredParameter;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
public BackendType createBackendTypeFromString(EDataType eDataType, String initialValue) {
return (BackendType)super.createFromString(eDataType, initialValue);
}
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/StaticTypesystemPackageImpl.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/StaticTypesystemPackageImpl.java
index 0722a4d..6c45911 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/StaticTypesystemPackageImpl.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/StaticTypesystemPackageImpl.java
@@ -2,7 +2,7 @@
* <copyright>
* </copyright>
*
- * $Id: StaticTypesystemPackageImpl.java,v 1.2 2008/03/04 11:00:31 sefftinge Exp $
+ * $Id: StaticTypesystemPackageImpl.java,v 1.3 2008/03/04 14:03:38 sefftinge Exp $
*/
package org.eclipse.xpand3.staticTypesystem.impl;
@@ -16,6 +16,13 @@ import org.eclipse.emf.ecore.impl.EPackageImpl;
import org.eclipse.xpand3.staticTypesystem.AbstractNamedElement;
import org.eclipse.xpand3.staticTypesystem.AbstractTypeReference;
+import org.eclipse.xpand3.staticTypesystem.DeclaredFunction;
+import org.eclipse.xpand3.staticTypesystem.DeclaredOperation;
+import org.eclipse.xpand3.staticTypesystem.DeclaredParameter;
+import org.eclipse.xpand3.staticTypesystem.DeclaredProperty;
+import org.eclipse.xpand3.staticTypesystem.DeclaredStaticProperty;
+import org.eclipse.xpand3.staticTypesystem.DeclaredType;
+import org.eclipse.xpand3.staticTypesystem.DeclaredTypeParameter;
import org.eclipse.xpand3.staticTypesystem.FunctionType;
import org.eclipse.xpand3.staticTypesystem.StaticTypesystemFactory;
import org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage;
@@ -24,9 +31,6 @@ import org.eclipse.xpand3.staticTypesystem.TypeVariable;
import org.eclipse.xpand3.staticTypesystem.VoidType;
import org.eclipse.xpand3.staticTypesystem.WildcardType;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclarationPackage;
-
-import org.eclipse.xpand3.staticTypesystem.declaration.impl.DeclarationPackageImpl;
import org.eclipse.xtend.backend.common.BackendType;
/**
@@ -90,6 +94,55 @@ public class StaticTypesystemPackageImpl extends EPackageImpl implements StaticT
* <!-- end-user-doc -->
* @generated
*/
+ private EClass declaredTypeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass declaredOperationEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass declaredFunctionEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass declaredPropertyEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass declaredStaticPropertyEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass declaredTypeParameterEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass declaredParameterEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
private EDataType backendTypeEDataType = null;
/**
@@ -148,16 +201,11 @@ public class StaticTypesystemPackageImpl extends EPackageImpl implements StaticT
isInited = true;
- // Obtain or create and register interdependencies
- DeclarationPackageImpl theDeclarationPackage = (DeclarationPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(DeclarationPackage.eNS_URI) instanceof DeclarationPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(DeclarationPackage.eNS_URI) : DeclarationPackage.eINSTANCE);
-
// Create package meta-data objects
theStaticTypesystemPackage.createPackageContents();
- theDeclarationPackage.createPackageContents();
// Initialize created meta-data
theStaticTypesystemPackage.initializePackageContents();
- theDeclarationPackage.initializePackageContents();
// Mark meta-data to indicate it can't be changed
theStaticTypesystemPackage.freeze();
@@ -305,6 +353,204 @@ public class StaticTypesystemPackageImpl extends EPackageImpl implements StaticT
* <!-- end-user-doc -->
* @generated
*/
+ public EClass getDeclaredType() {
+ return declaredTypeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDeclaredType_StaticProperties() {
+ return (EReference)declaredTypeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDeclaredType_Properties() {
+ return (EReference)declaredTypeEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDeclaredType_Operations() {
+ return (EReference)declaredTypeEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDeclaredType_DeclaredTypeParameters() {
+ return (EReference)declaredTypeEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDeclaredType_BackendType() {
+ return (EAttribute)declaredTypeEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDeclaredOperation() {
+ return declaredOperationEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDeclaredOperation_DeclaredParameters() {
+ return (EReference)declaredOperationEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDeclaredOperation_DeclaringType() {
+ return (EReference)declaredOperationEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDeclaredOperation_ReturnType() {
+ return (EReference)declaredOperationEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDeclaredFunction() {
+ return declaredFunctionEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDeclaredFunction_DeclaredParameters() {
+ return (EReference)declaredFunctionEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDeclaredFunction_DeclaredTypeParameters() {
+ return (EReference)declaredFunctionEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDeclaredFunction_ReturnType() {
+ return (EReference)declaredFunctionEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDeclaredProperty() {
+ return declaredPropertyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDeclaredProperty_Type() {
+ return (EReference)declaredPropertyEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDeclaredStaticProperty() {
+ return declaredStaticPropertyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDeclaredStaticProperty_Type() {
+ return (EReference)declaredStaticPropertyEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDeclaredTypeParameter() {
+ return declaredTypeParameterEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDeclaredTypeParameter_UpperBounds() {
+ return (EReference)declaredTypeParameterEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDeclaredParameter() {
+ return declaredParameterEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDeclaredParameter_Type() {
+ return (EReference)declaredParameterEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
public EDataType getBackendType() {
return backendTypeEDataType;
}
@@ -359,6 +605,35 @@ public class StaticTypesystemPackageImpl extends EPackageImpl implements StaticT
createEReference(functionTypeEClass, FUNCTION_TYPE__DECLARED_FUNCTION);
createEReference(functionTypeEClass, FUNCTION_TYPE__ACTUAL_TYPE_ARGUMENTS);
+ declaredTypeEClass = createEClass(DECLARED_TYPE);
+ createEReference(declaredTypeEClass, DECLARED_TYPE__STATIC_PROPERTIES);
+ createEReference(declaredTypeEClass, DECLARED_TYPE__PROPERTIES);
+ createEReference(declaredTypeEClass, DECLARED_TYPE__OPERATIONS);
+ createEReference(declaredTypeEClass, DECLARED_TYPE__DECLARED_TYPE_PARAMETERS);
+ createEAttribute(declaredTypeEClass, DECLARED_TYPE__BACKEND_TYPE);
+
+ declaredOperationEClass = createEClass(DECLARED_OPERATION);
+ createEReference(declaredOperationEClass, DECLARED_OPERATION__DECLARED_PARAMETERS);
+ createEReference(declaredOperationEClass, DECLARED_OPERATION__DECLARING_TYPE);
+ createEReference(declaredOperationEClass, DECLARED_OPERATION__RETURN_TYPE);
+
+ declaredFunctionEClass = createEClass(DECLARED_FUNCTION);
+ createEReference(declaredFunctionEClass, DECLARED_FUNCTION__DECLARED_PARAMETERS);
+ createEReference(declaredFunctionEClass, DECLARED_FUNCTION__DECLARED_TYPE_PARAMETERS);
+ createEReference(declaredFunctionEClass, DECLARED_FUNCTION__RETURN_TYPE);
+
+ declaredPropertyEClass = createEClass(DECLARED_PROPERTY);
+ createEReference(declaredPropertyEClass, DECLARED_PROPERTY__TYPE);
+
+ declaredStaticPropertyEClass = createEClass(DECLARED_STATIC_PROPERTY);
+ createEReference(declaredStaticPropertyEClass, DECLARED_STATIC_PROPERTY__TYPE);
+
+ declaredTypeParameterEClass = createEClass(DECLARED_TYPE_PARAMETER);
+ createEReference(declaredTypeParameterEClass, DECLARED_TYPE_PARAMETER__UPPER_BOUNDS);
+
+ declaredParameterEClass = createEClass(DECLARED_PARAMETER);
+ createEReference(declaredParameterEClass, DECLARED_PARAMETER__TYPE);
+
// Create data types
backendTypeEDataType = createEDataType(BACKEND_TYPE);
}
@@ -386,12 +661,6 @@ public class StaticTypesystemPackageImpl extends EPackageImpl implements StaticT
setNsPrefix(eNS_PREFIX);
setNsURI(eNS_URI);
- // Obtain other dependent packages
- DeclarationPackage theDeclarationPackage = (DeclarationPackage)EPackage.Registry.INSTANCE.getEPackage(DeclarationPackage.eNS_URI);
-
- // Add subpackages
- getESubpackages().add(theDeclarationPackage);
-
// Create type parameters
// Set bounds for type parameters
@@ -402,6 +671,13 @@ public class StaticTypesystemPackageImpl extends EPackageImpl implements StaticT
voidTypeEClass.getESuperTypes().add(this.getAbstractTypeReference());
wildcardTypeEClass.getESuperTypes().add(this.getAbstractTypeReference());
functionTypeEClass.getESuperTypes().add(this.getAbstractTypeReference());
+ declaredTypeEClass.getESuperTypes().add(this.getAbstractNamedElement());
+ declaredOperationEClass.getESuperTypes().add(this.getAbstractNamedElement());
+ declaredFunctionEClass.getESuperTypes().add(this.getAbstractNamedElement());
+ declaredPropertyEClass.getESuperTypes().add(this.getAbstractNamedElement());
+ declaredStaticPropertyEClass.getESuperTypes().add(this.getAbstractNamedElement());
+ declaredTypeParameterEClass.getESuperTypes().add(this.getAbstractNamedElement());
+ declaredParameterEClass.getESuperTypes().add(this.getAbstractNamedElement());
// Initialize classes and features; add operations and parameters
initEClass(abstractNamedElementEClass, AbstractNamedElement.class, "AbstractNamedElement", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
@@ -410,11 +686,11 @@ public class StaticTypesystemPackageImpl extends EPackageImpl implements StaticT
initEClass(abstractTypeReferenceEClass, AbstractTypeReference.class, "AbstractTypeReference", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEClass(typeEClass, Type.class, "Type", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEReference(getType_DeclaredType(), theDeclarationPackage.getDeclaredType(), null, "declaredType", null, 1, 1, Type.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getType_DeclaredType(), this.getDeclaredType(), null, "declaredType", null, 1, 1, Type.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getType_ActualTypeArguments(), this.getAbstractTypeReference(), null, "actualTypeArguments", null, 0, -1, Type.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(typeVariableEClass, TypeVariable.class, "TypeVariable", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEReference(getTypeVariable_DeclaredTypeParameter(), theDeclarationPackage.getDeclaredTypeParameter(), null, "declaredTypeParameter", null, 1, 1, TypeVariable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getTypeVariable_DeclaredTypeParameter(), this.getDeclaredTypeParameter(), null, "declaredTypeParameter", null, 1, 1, TypeVariable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(voidTypeEClass, VoidType.class, "VoidType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
@@ -423,9 +699,38 @@ public class StaticTypesystemPackageImpl extends EPackageImpl implements StaticT
initEReference(getWildcardType_UpperBounds(), this.getAbstractTypeReference(), null, "upperBounds", null, 0, -1, WildcardType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(functionTypeEClass, FunctionType.class, "FunctionType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEReference(getFunctionType_DeclaredFunction(), theDeclarationPackage.getDeclaredFunction(), null, "declaredFunction", null, 1, 1, FunctionType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getFunctionType_DeclaredFunction(), this.getDeclaredFunction(), null, "declaredFunction", null, 1, 1, FunctionType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getFunctionType_ActualTypeArguments(), this.getAbstractTypeReference(), null, "actualTypeArguments", null, 0, -1, FunctionType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEClass(declaredTypeEClass, DeclaredType.class, "DeclaredType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getDeclaredType_StaticProperties(), this.getDeclaredStaticProperty(), null, "staticProperties", null, 0, -1, DeclaredType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDeclaredType_Properties(), this.getDeclaredProperty(), null, "properties", null, 0, -1, DeclaredType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDeclaredType_Operations(), this.getDeclaredOperation(), this.getDeclaredOperation_DeclaringType(), "operations", null, 0, -1, DeclaredType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDeclaredType_DeclaredTypeParameters(), this.getDeclaredTypeParameter(), null, "declaredTypeParameters", null, 0, -1, DeclaredType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDeclaredType_BackendType(), this.getBackendType(), "backendType", null, 1, 1, DeclaredType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(declaredOperationEClass, DeclaredOperation.class, "DeclaredOperation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getDeclaredOperation_DeclaredParameters(), this.getDeclaredParameter(), null, "declaredParameters", null, 0, -1, DeclaredOperation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDeclaredOperation_DeclaringType(), this.getDeclaredType(), this.getDeclaredType_Operations(), "declaringType", null, 1, 1, DeclaredOperation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDeclaredOperation_ReturnType(), this.getAbstractTypeReference(), null, "returnType", null, 1, 1, DeclaredOperation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(declaredFunctionEClass, DeclaredFunction.class, "DeclaredFunction", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getDeclaredFunction_DeclaredParameters(), this.getDeclaredParameter(), null, "declaredParameters", null, 0, -1, DeclaredFunction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDeclaredFunction_DeclaredTypeParameters(), this.getDeclaredTypeParameter(), null, "declaredTypeParameters", null, 0, -1, DeclaredFunction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDeclaredFunction_ReturnType(), this.getDeclaredType(), null, "returnType", null, 0, 1, DeclaredFunction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(declaredPropertyEClass, DeclaredProperty.class, "DeclaredProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getDeclaredProperty_Type(), this.getAbstractTypeReference(), null, "type", null, 1, 1, DeclaredProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(declaredStaticPropertyEClass, DeclaredStaticProperty.class, "DeclaredStaticProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getDeclaredStaticProperty_Type(), this.getType(), null, "type", null, 1, 1, DeclaredStaticProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(declaredTypeParameterEClass, DeclaredTypeParameter.class, "DeclaredTypeParameter", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getDeclaredTypeParameter_UpperBounds(), this.getAbstractTypeReference(), null, "upperBounds", null, 0, -1, DeclaredTypeParameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(declaredParameterEClass, DeclaredParameter.class, "DeclaredParameter", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getDeclaredParameter_Type(), this.getAbstractTypeReference(), null, "type", null, 1, 1, DeclaredParameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
// Initialize data types
initEDataType(backendTypeEDataType, BackendType.class, "BackendType", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS);
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/TypeImpl.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/TypeImpl.java
index 3085b52..8ad03ee 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/TypeImpl.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/TypeImpl.java
@@ -2,7 +2,7 @@
* <copyright>
* </copyright>
*
- * $Id: TypeImpl.java,v 1.1 2008/03/04 10:53:01 sefftinge Exp $
+ * $Id: TypeImpl.java,v 1.2 2008/03/04 14:03:38 sefftinge Exp $
*/
package org.eclipse.xpand3.staticTypesystem.impl;
@@ -20,11 +20,10 @@ import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.emf.ecore.util.EObjectResolvingEList;
import org.eclipse.xpand3.staticTypesystem.AbstractTypeReference;
+import org.eclipse.xpand3.staticTypesystem.DeclaredType;
import org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage;
import org.eclipse.xpand3.staticTypesystem.Type;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType;
-
/**
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Type</b></em>'.
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/TypeVariableImpl.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/TypeVariableImpl.java
index 3d3af92..cb6a999 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/TypeVariableImpl.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/TypeVariableImpl.java
@@ -2,7 +2,7 @@
* <copyright>
* </copyright>
*
- * $Id: TypeVariableImpl.java,v 1.1 2008/03/04 10:53:02 sefftinge Exp $
+ * $Id: TypeVariableImpl.java,v 1.2 2008/03/04 14:03:38 sefftinge Exp $
*/
package org.eclipse.xpand3.staticTypesystem.impl;
@@ -13,11 +13,10 @@ import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.xpand3.staticTypesystem.DeclaredTypeParameter;
import org.eclipse.xpand3.staticTypesystem.StaticTypesystemPackage;
import org.eclipse.xpand3.staticTypesystem.TypeVariable;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredTypeParameter;
-
/**
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Type Variable</b></em>'.
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/VoidTypeImpl.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/VoidTypeImpl.java
index 532044f..8a1a2d1 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/VoidTypeImpl.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/VoidTypeImpl.java
@@ -2,7 +2,7 @@
* <copyright>
* </copyright>
*
- * $Id: VoidTypeImpl.java,v 1.1 2008/03/04 10:53:02 sefftinge Exp $
+ * $Id: VoidTypeImpl.java,v 1.2 2008/03/04 14:03:38 sefftinge Exp $
*/
package org.eclipse.xpand3.staticTypesystem.impl;
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/WildcardTypeImpl.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/WildcardTypeImpl.java
index 5a028ec..90f00a0 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/WildcardTypeImpl.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/impl/WildcardTypeImpl.java
@@ -2,7 +2,7 @@
* <copyright>
* </copyright>
*
- * $Id: WildcardTypeImpl.java,v 1.1 2008/03/04 10:53:01 sefftinge Exp $
+ * $Id: WildcardTypeImpl.java,v 1.2 2008/03/04 14:03:38 sefftinge Exp $
*/
package org.eclipse.xpand3.staticTypesystem.impl;
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/util/StaticTypesystemAdapterFactory.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/util/StaticTypesystemAdapterFactory.java
index 2bb14ea..20ef8ff 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/util/StaticTypesystemAdapterFactory.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/util/StaticTypesystemAdapterFactory.java
@@ -2,7 +2,7 @@
* <copyright>
* </copyright>
*
- * $Id: StaticTypesystemAdapterFactory.java,v 1.1 2008/03/04 10:52:57 sefftinge Exp $
+ * $Id: StaticTypesystemAdapterFactory.java,v 1.2 2008/03/04 14:03:38 sefftinge Exp $
*/
package org.eclipse.xpand3.staticTypesystem.util;
@@ -100,6 +100,34 @@ public class StaticTypesystemAdapterFactory extends AdapterFactoryImpl {
return createFunctionTypeAdapter();
}
@Override
+ public Adapter caseDeclaredType(DeclaredType object) {
+ return createDeclaredTypeAdapter();
+ }
+ @Override
+ public Adapter caseDeclaredOperation(DeclaredOperation object) {
+ return createDeclaredOperationAdapter();
+ }
+ @Override
+ public Adapter caseDeclaredFunction(DeclaredFunction object) {
+ return createDeclaredFunctionAdapter();
+ }
+ @Override
+ public Adapter caseDeclaredProperty(DeclaredProperty object) {
+ return createDeclaredPropertyAdapter();
+ }
+ @Override
+ public Adapter caseDeclaredStaticProperty(DeclaredStaticProperty object) {
+ return createDeclaredStaticPropertyAdapter();
+ }
+ @Override
+ public Adapter caseDeclaredTypeParameter(DeclaredTypeParameter object) {
+ return createDeclaredTypeParameterAdapter();
+ }
+ @Override
+ public Adapter caseDeclaredParameter(DeclaredParameter object) {
+ return createDeclaredParameterAdapter();
+ }
+ @Override
public Adapter defaultCase(EObject object) {
return createEObjectAdapter();
}
@@ -218,6 +246,104 @@ public class StaticTypesystemAdapterFactory extends AdapterFactoryImpl {
}
/**
+ * Creates a new adapter for an object of class '{@link org.eclipse.xpand3.staticTypesystem.DeclaredType <em>Declared Type</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredType
+ * @generated
+ */
+ public Adapter createDeclaredTypeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.xpand3.staticTypesystem.DeclaredOperation <em>Declared Operation</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredOperation
+ * @generated
+ */
+ public Adapter createDeclaredOperationAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.xpand3.staticTypesystem.DeclaredFunction <em>Declared Function</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredFunction
+ * @generated
+ */
+ public Adapter createDeclaredFunctionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.xpand3.staticTypesystem.DeclaredProperty <em>Declared Property</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredProperty
+ * @generated
+ */
+ public Adapter createDeclaredPropertyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.xpand3.staticTypesystem.DeclaredStaticProperty <em>Declared Static Property</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredStaticProperty
+ * @generated
+ */
+ public Adapter createDeclaredStaticPropertyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.xpand3.staticTypesystem.DeclaredTypeParameter <em>Declared Type Parameter</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredTypeParameter
+ * @generated
+ */
+ public Adapter createDeclaredTypeParameterAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.xpand3.staticTypesystem.DeclaredParameter <em>Declared Parameter</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.xpand3.staticTypesystem.DeclaredParameter
+ * @generated
+ */
+ public Adapter createDeclaredParameterAdapter() {
+ return null;
+ }
+
+ /**
* Creates a new adapter for the default case.
* <!-- begin-user-doc -->
* This default implementation returns null.
diff --git a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/util/StaticTypesystemSwitch.java b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/util/StaticTypesystemSwitch.java
index 5b7ccbb..a58dea1 100644
--- a/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/util/StaticTypesystemSwitch.java
+++ b/plugins/org.eclipse.xpand3/emf-gen/org/eclipse/xpand3/staticTypesystem/util/StaticTypesystemSwitch.java
@@ -2,7 +2,7 @@
* <copyright>
* </copyright>
*
- * $Id: StaticTypesystemSwitch.java,v 1.1 2008/03/04 10:52:57 sefftinge Exp $
+ * $Id: StaticTypesystemSwitch.java,v 1.2 2008/03/04 14:03:38 sefftinge Exp $
*/
package org.eclipse.xpand3.staticTypesystem.util;
@@ -134,6 +134,55 @@ public class StaticTypesystemSwitch<T> {
if (result == null) result = defaultCase(theEObject);
return result;
}
+ case StaticTypesystemPackage.DECLARED_TYPE: {
+ DeclaredType declaredType = (DeclaredType)theEObject;
+ T result = caseDeclaredType(declaredType);
+ if (result == null) result = caseAbstractNamedElement(declaredType);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StaticTypesystemPackage.DECLARED_OPERATION: {
+ DeclaredOperation declaredOperation = (DeclaredOperation)theEObject;
+ T result = caseDeclaredOperation(declaredOperation);
+ if (result == null) result = caseAbstractNamedElement(declaredOperation);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StaticTypesystemPackage.DECLARED_FUNCTION: {
+ DeclaredFunction declaredFunction = (DeclaredFunction)theEObject;
+ T result = caseDeclaredFunction(declaredFunction);
+ if (result == null) result = caseAbstractNamedElement(declaredFunction);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StaticTypesystemPackage.DECLARED_PROPERTY: {
+ DeclaredProperty declaredProperty = (DeclaredProperty)theEObject;
+ T result = caseDeclaredProperty(declaredProperty);
+ if (result == null) result = caseAbstractNamedElement(declaredProperty);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StaticTypesystemPackage.DECLARED_STATIC_PROPERTY: {
+ DeclaredStaticProperty declaredStaticProperty = (DeclaredStaticProperty)theEObject;
+ T result = caseDeclaredStaticProperty(declaredStaticProperty);
+ if (result == null) result = caseAbstractNamedElement(declaredStaticProperty);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StaticTypesystemPackage.DECLARED_TYPE_PARAMETER: {
+ DeclaredTypeParameter declaredTypeParameter = (DeclaredTypeParameter)theEObject;
+ T result = caseDeclaredTypeParameter(declaredTypeParameter);
+ if (result == null) result = caseAbstractNamedElement(declaredTypeParameter);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case StaticTypesystemPackage.DECLARED_PARAMETER: {
+ DeclaredParameter declaredParameter = (DeclaredParameter)theEObject;
+ T result = caseDeclaredParameter(declaredParameter);
+ if (result == null) result = caseAbstractNamedElement(declaredParameter);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
default: return defaultCase(theEObject);
}
}
@@ -244,6 +293,111 @@ public class StaticTypesystemSwitch<T> {
}
/**
+ * Returns the result of interpreting the object as an instance of '<em>Declared Type</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Declared Type</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDeclaredType(DeclaredType object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Declared Operation</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Declared Operation</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDeclaredOperation(DeclaredOperation object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Declared Function</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Declared Function</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDeclaredFunction(DeclaredFunction object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Declared Property</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Declared Property</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDeclaredProperty(DeclaredProperty object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Declared Static Property</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Declared Static Property</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDeclaredStaticProperty(DeclaredStaticProperty object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Declared Type Parameter</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Declared Type Parameter</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDeclaredTypeParameter(DeclaredTypeParameter object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Declared Parameter</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Declared Parameter</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDeclaredParameter(DeclaredParameter object) {
+ return null;
+ }
+
+ /**
* Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
* <!-- begin-user-doc -->
* This implementation returns null;
diff --git a/plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/RefTest.java b/plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/RefTest.java
new file mode 100644
index 0000000..4015571
--- /dev/null
+++ b/plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/RefTest.java
@@ -0,0 +1,44 @@
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2002-2007 itemis AG and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * itemis AG - Initial API and implementation
+ *
+ * </copyright>
+ *
+ */
+package org.eclipse.xand3.analyzation;
+
+import java.io.Serializable;
+
+/**
+ * @author Sven Efftinge
+ *
+ */
+public class RefTest<T extends Serializable> implements Comparable<T>{
+
+ /**
+ * @param args
+ */
+ public static void main(String[] args) {
+ Class<RefTest> cls = RefTest.class;
+ cls.getTypeParameters();
+ cls.getDeclaredMethods();
+
+ }
+
+ /* (non-Javadoc)
+ * @see java.lang.Comparable#compareTo(java.lang.Object)
+ */
+ public int compareTo(T o) {
+ // TODO Auto-generated method stub
+ return 0;
+ }
+
+}
diff --git a/plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/typesystem/DeclarationsContributor.java b/plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/typesystem/DeclarationsContributor.java
index 1229a6c..516c04b 100644
--- a/plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/typesystem/DeclarationsContributor.java
+++ b/plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/typesystem/DeclarationsContributor.java
@@ -17,8 +17,8 @@ package org.eclipse.xand3.analyzation.typesystem;
import java.util.Set;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredFunction;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType;
+import org.eclipse.xpand3.staticTypesystem.DeclaredFunction;
+import org.eclipse.xpand3.staticTypesystem.DeclaredType;
/**
* @author Sven Efftinge
diff --git a/plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/typesystem/TypeSystemFacade.java b/plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/typesystem/TypeSystemFacade.java
index b9f3dd1..45f9657 100644
--- a/plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/typesystem/TypeSystemFacade.java
+++ b/plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/typesystem/TypeSystemFacade.java
@@ -16,12 +16,12 @@
package org.eclipse.xand3.analyzation.typesystem;
import org.eclipse.xpand3.staticTypesystem.AbstractTypeReference;
+import org.eclipse.xpand3.staticTypesystem.DeclaredFunction;
+import org.eclipse.xpand3.staticTypesystem.DeclaredType;
import org.eclipse.xpand3.staticTypesystem.FunctionType;
import org.eclipse.xpand3.staticTypesystem.StaticTypesystemFactory;
import org.eclipse.xpand3.staticTypesystem.Type;
import org.eclipse.xpand3.staticTypesystem.WildcardType;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredFunction;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType;
/**
* @author Sven Efftinge
diff --git a/plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/typesystem/builtin/BuiltinDeclarationsContributor.java b/plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/typesystem/builtin/BuiltinDeclarationsContributor.java
index 9eeaaf7..dc91524 100644
--- a/plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/typesystem/builtin/BuiltinDeclarationsContributor.java
+++ b/plugins/org.eclipse.xpand3/src/org/eclipse/xand3/analyzation/typesystem/builtin/BuiltinDeclarationsContributor.java
@@ -15,44 +15,164 @@
*/
package org.eclipse.xand3.analyzation.typesystem.builtin;
+import java.util.HashMap;
+import java.util.Map;
import java.util.Set;
+import java.util.Map.Entry;
import org.eclipse.xand3.analyzation.typesystem.DeclarationsContributor;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredFunction;
-import org.eclipse.xpand3.staticTypesystem.declaration.DeclaredType;
-import org.eclipse.xtend.backend.common.BackendTypesystem;
+import org.eclipse.xand3.analyzation.typesystem.TypeSystemFacade;
+import org.eclipse.xpand3.declaration.DeclarationFactory;
+import org.eclipse.xpand3.staticTypesystem.AbstractTypeReference;
+import org.eclipse.xpand3.staticTypesystem.DeclaredFunction;
+import org.eclipse.xpand3.staticTypesystem.DeclaredProperty;
+import org.eclipse.xpand3.staticTypesystem.DeclaredStaticProperty;
+import org.eclipse.xpand3.staticTypesystem.DeclaredType;
+import org.eclipse.xpand3.staticTypesystem.StaticTypesystemFactory;
+import org.eclipse.xtend.backend.BackendFacade;
+import org.eclipse.xtend.backend.common.BackendType;
+import org.eclipse.xtend.backend.common.Function;
+import org.eclipse.xtend.backend.common.NamedFunction;
+import org.eclipse.xtend.backend.common.Property;
+import org.eclipse.xtend.backend.common.StaticProperty;
+import org.eclipse.xtend.backend.types.builtin.BooleanType;
+import org.eclipse.xtend.backend.types.builtin.CollectionType;
+import org.eclipse.xtend.backend.types.builtin.DoubleType;
+import org.eclipse.xtend.backend.types.builtin.FunctionType;
+import org.eclipse.xtend.backend.types.builtin.ListType;
+import org.eclipse.xtend.backend.types.builtin.LongType;
+import org.eclipse.xtend.backend.types.builtin.ObjectType;
+import org.eclipse.xtend.backend.types.builtin.PropertyType;
+import org.eclipse.xtend.backend.types.builtin.SetType;
+import org.eclipse.xtend.backend.types.builtin.StaticPropertyType;
+import org.eclipse.xtend.backend.types.builtin.StringType;
+import org.eclipse.xtend.backend.types.builtin.TypeType;
/**
* @author Sven Efftinge
- *
+ *
*/
public class BuiltinDeclarationsContributor implements DeclarationsContributor {
+
+ private Map<String, DeclaredType> types = new HashMap<String, DeclaredType>();
+ private Map<String, DeclaredFunction> functions = new HashMap<String, DeclaredFunction>();
+
+ private TypeSystemFacade facade = TypeSystemFacade.create();
+
- private BackendTypesystem backendTypesystem = null;
-
+ private DeclaredFunction createDeclaredFunction(NamedFunction backendFunction) {
+ if (functions.containsKey(backendFunction.getName())) {
+ return functions.get(backendFunction.getName());
+ }
+ DeclaredFunction df = StaticTypesystemFactory.eINSTANCE
+ .createDeclaredFunction();
+ functions.put(backendFunction.getName(), df);
+ df.setName(backendFunction.getName());
+
+ return df;
+ }
/**
- *
+ * @param instance
+ * @return
*/
- public BuiltinDeclarationsContributor(BackendTypesystem backendTypesystem) {
- this.backendTypesystem = backendTypesystem;
+ private DeclaredType createDeclaredType(BackendType bt) {
+ if (types.containsKey(bt.getName())) {
+ return types.get(bt.getName());
+ }
+ DeclaredType dt = StaticTypesystemFactory.eINSTANCE
+ .createDeclaredType();
+ types.put(bt.getName(), dt);
+ dt.setName(bt.getName());
+ dt.setBackendType(bt);
+ Map<String, ? extends Property> properties = bt.getProperties();
+ for (Entry<String, ? extends Property> entry : properties.entrySet()) {
+ dt.getProperties().add(createDeclaredProperty(entry.getValue()));
+ }
+ // for (NamedFunction func: bt.getBuiltinOperations()) {
+ // dt.getProperties().add(createDeclaredOperation(func));
+ // }
+ for (StaticProperty sp : bt.getStaticProperties().values()) {
+ dt.getStaticProperties().add(createDeclaredStaticProperty(sp));
+ }
+ return dt;
}
-
- /* (non-Javadoc)
+
+ /**
+ * @param sp
+ * @return
+ */
+ private DeclaredStaticProperty createDeclaredStaticProperty(
+ StaticProperty sp) {
+ return null;
+ }
+
+ /**
+ * @param value
+ * @return
+ */
+ private DeclaredProperty createDeclaredProperty(Property value) {
+ DeclaredProperty dp = StaticTypesystemFactory.eINSTANCE
+ .createDeclaredProperty();
+ dp.setName(value.getName());
+ dp
+ .setType(facade.typeReference(typeForName(value.getType()
+ .getName())));
+ return dp;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
* @see org.eclipse.xand3.analyzation.typesystem.DeclarationsContributor#functionsForName(java.lang.String)
*/
public Set<DeclaredFunction> functionsForName(String name) {
- // TODO Auto-generated method stub
+
return null;
}
- /* (non-Javadoc)
+ /*
+ * (non-Javadoc)
+ *
* @see org.eclipse.xand3.analyzation.typesystem.DeclarationsContributor#typeForName(java.lang.String)
*/
public DeclaredType typeForName(String name) {
- backendTypesystem.
+ if (name.equals(OBJECT)) {
+ createDeclaredType(ObjectType.INSTANCE);
+ } else if (name.equals(STRING)) {
+ createDeclaredType(StringType.INSTANCE);
+ } else if (name.equals(BOOLEAN)) {
+ createDeclaredType(BooleanType.INSTANCE);
+ } else if (name.equals(INTEGER)) {
+ createDeclaredType(LongType.INSTANCE);
+ } else if (name.equals(REAL)) {
+ createDeclaredType(DoubleType.INSTANCE);
+ } else if (name.equals(COLLECTION)) {
+ createDeclaredType(CollectionType.INSTANCE);
+ } else if (name.equals(LIST)) {
+ createDeclaredType(ListType.INSTANCE);
+ } else if (name.equals(SET)) {
+ createDeclaredType(SetType.INSTANCE);
+ } else if (name.equals(TYPE)) {
+ createDeclaredType(TypeType.INSTANCE);
+ } else if (name.equals(PROPERTY)) {
+ createDeclaredType(PropertyType.INSTANCE);
+ } else if (name.equals(OPERATION)) {
+ createDeclaredType(FunctionType.INSTANCE);
+ } else if (name.equals(STATIC_PROPERTY)) {
+ createDeclaredType(StaticPropertyType.INSTANCE);
+ } else if (name.equals(VOID)) {
+ createVoidType();
+ }
return null;
}
-
+
+ /**
+ *
+ */
+ private void createVoidType() {
+
+ }
+
public static final String OBJECT = "Object";
// Datatypes
diff --git a/plugins/org.eclipse.xpand3/src/static_typesystem.ecore b/plugins/org.eclipse.xpand3/src/static_typesystem.ecore
index d754094..e8725ea 100644
--- a/plugins/org.eclipse.xpand3/src/static_typesystem.ecore
+++ b/plugins/org.eclipse.xpand3/src/static_typesystem.ecore
@@ -9,13 +9,13 @@
<eClassifiers xsi:type="ecore:EClass" name="AbstractTypeReference" abstract="true"/>
<eClassifiers xsi:type="ecore:EClass" name="Type" eSuperTypes="#//AbstractTypeReference">
<eStructuralFeatures xsi:type="ecore:EReference" name="declaredType" lowerBound="1"
- eType="#//declaration/DeclaredType"/>
+ eType="#//DeclaredType"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="actualTypeArguments" upperBound="-1"
eType="#//AbstractTypeReference"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="TypeVariable" eSuperTypes="#//AbstractTypeReference">
<eStructuralFeatures xsi:type="ecore:EReference" name="declaredTypeParameter"
- lowerBound="1" eType="#//declaration/DeclaredTypeParameter"/>
+ lowerBound="1" eType="#//DeclaredTypeParameter"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="VoidType" eSuperTypes="#//AbstractTypeReference"/>
<eClassifiers xsi:type="ecore:EClass" name="WildcardType" eSuperTypes="#//AbstractTypeReference">
@@ -26,42 +26,49 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="FunctionType" eSuperTypes="#//AbstractTypeReference">
<eStructuralFeatures xsi:type="ecore:EReference" name="declaredFunction" lowerBound="1"
- eType="#//declaration/DeclaredFunction"/>
+ eType="#//DeclaredFunction"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="actualTypeArguments" upperBound="-1"
eType="#//AbstractTypeReference"/>
</eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="DeclaredType" eSuperTypes="#//AbstractNamedElement">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="staticProperties" upperBound="-1"
+ eType="#//DeclaredStaticProperty" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="properties" upperBound="-1"
+ eType="#//DeclaredProperty" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="operations" upperBound="-1"
+ eType="#//DeclaredOperation" containment="true" eOpposite="#//DeclaredOperation/declaringType"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="declaredTypeParameters"
+ upperBound="-1" eType="#//DeclaredTypeParameter" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="backendType" lowerBound="1"
+ eType="#//BackendType"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="DeclaredOperation" eSuperTypes="#//AbstractNamedElement">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="declaredParameters" upperBound="-1"
+ eType="#//DeclaredParameter" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="declaringType" lowerBound="1"
+ eType="#//DeclaredType" eOpposite="#//DeclaredType/operations"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="returnType" lowerBound="1"
+ eType="#//AbstractTypeReference"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="DeclaredFunction" eSuperTypes="#//AbstractNamedElement">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="declaredParameters" upperBound="-1"
+ eType="#//DeclaredParameter" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="declaredTypeParameters"
+ upperBound="-1" eType="#//DeclaredTypeParameter" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="returnType" eType="#//DeclaredType"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="DeclaredProperty" eSuperTypes="#//AbstractNamedElement">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="type" lowerBound="1" eType="#//AbstractTypeReference"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="DeclaredStaticProperty" eSuperTypes="#//AbstractNamedElement">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="type" lowerBound="1" eType="#//Type"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="DeclaredTypeParameter" eSuperTypes="#//AbstractNamedElement">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="upperBounds" upperBound="-1"
+ eType="#//AbstractTypeReference"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="DeclaredParameter" eSuperTypes="#//AbstractNamedElement">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="type" lowerBound="1" eType="#//AbstractTypeReference"/>
+ </eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="BackendType" instanceClassName="org.eclipse.xtend.backend.common.BackendType"/>
- <eSubpackages name="declaration" nsURI="http://www.eclipse.org/m2t/xpand3/staticTypesystem/declaration"
- nsPrefix="declaration">
- <eClassifiers xsi:type="ecore:EClass" name="DeclaredType" eSuperTypes="#//AbstractNamedElement">
- <eStructuralFeatures xsi:type="ecore:EReference" name="staticProperties" upperBound="-1"
- eType="#//declaration/DeclaredStaticProperty" containment="true"/>
- <eStructuralFeatures xsi:type="ecore:EReference" name="properties" upperBound="-1"
- eType="#//declaration/DeclaredProperty" containment="true"/>
- <eStructuralFeatures xsi:type="ecore:EReference" name="operations" upperBound="-1"
- eType="#//declaration/DeclaredOperation" containment="true" eOpposite="#//declaration/DeclaredOperation/declaringType"/>
- <eStructuralFeatures xsi:type="ecore:EReference" name="declaredTypeParameters"
- upperBound="-1" eType="#//declaration/DeclaredTypeParameter" containment="true"/>
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="backendType" lowerBound="1"
- eType="#//BackendType"/>
- </eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="DeclaredOperation" eSuperTypes="#//AbstractNamedElement">
- <eStructuralFeatures xsi:type="ecore:EReference" name="declaredParameters" upperBound="-1"
- eType="#//declaration/DeclaredParameter" containment="true"/>
- <eStructuralFeatures xsi:type="ecore:EReference" name="declaringType" lowerBound="1"
- eType="#//declaration/DeclaredType" eOpposite="#//declaration/DeclaredType/operations"/>
- <eStructuralFeatures xsi:type="ecore:EReference" name="returnType" eType="#//declaration/DeclaredType"/>
- </eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="DeclaredFunction" eSuperTypes="#//AbstractNamedElement">
- <eStructuralFeatures xsi:type="ecore:EReference" name="declaredParameters" upperBound="-1"
- eType="#//declaration/DeclaredParameter" containment="true"/>
- <eStructuralFeatures xsi:type="ecore:EReference" name="declaredTypeParameters"
- upperBound="-1" eType="#//declaration/DeclaredTypeParameter" containment="true"/>
- <eStructuralFeatures xsi:type="ecore:EReference" name="returnType" eType="#//declaration/DeclaredType"/>
- </eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="DeclaredProperty" eSuperTypes="#//AbstractNamedElement"/>
- <eClassifiers xsi:type="ecore:EClass" name="DeclaredStaticProperty" eSuperTypes="#//AbstractNamedElement"/>
- <eClassifiers xsi:type="ecore:EClass" name="DeclaredTypeParameter" eSuperTypes="#//AbstractNamedElement"/>
- <eClassifiers xsi:type="ecore:EClass" name="DeclaredParameter" eSuperTypes="#//AbstractNamedElement"/>
- </eSubpackages>
</ecore:EPackage>
diff --git a/plugins/org.eclipse.xpand3/src/static_typesystem.genmodel b/plugins/org.eclipse.xpand3/src/static_typesystem.genmodel
index b759b23..70f744c 100644
--- a/plugins/org.eclipse.xpand3/src/static_typesystem.genmodel
+++ b/plugins/org.eclipse.xpand3/src/static_typesystem.genmodel
@@ -7,6 +7,7 @@
<foreignModel>static_typesystem.ecore</foreignModel>
<genPackages prefix="StaticTypesystem" basePackage="org.eclipse.xpand3" disposableProviderFactory="true"
ecorePackage="static_typesystem.ecore#/">
+ <genDataTypes ecoreDataType="static_typesystem.ecore#//BackendType"/>
<genClasses image="false" ecoreClass="static_typesystem.ecore#//AbstractNamedElement">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute static_typesystem.ecore#//AbstractNamedElement/name"/>
</genClasses>
@@ -23,29 +24,38 @@
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//WildcardType/lowerBounds"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//WildcardType/upperBounds"/>
</genClasses>
- <nestedGenPackages prefix="Declaration" disposableProviderFactory="true" ecorePackage="static_typesystem.ecore#//declaration">
- <genClasses ecoreClass="static_typesystem.ecore#//declaration/DeclaredType">
- <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//declaration/DeclaredType/staticProperties"/>
- <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//declaration/DeclaredType/properties"/>
- <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//declaration/DeclaredType/operations"/>
- <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//declaration/DeclaredType/declaredTypeParameters"/>
- </genClasses>
- <genClasses ecoreClass="static_typesystem.ecore#//declaration/DeclaredOperation">
- <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//declaration/DeclaredOperation/declaredParameters"/>
- <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference static_typesystem.ecore#//declaration/DeclaredOperation/declaringType"/>
- <genFeatures notify="false" createChild="false" propertySortChoices="true"
- ecoreFeature="ecore:EReference static_typesystem.ecore#//declaration/DeclaredOperation/returnType"/>
- </genClasses>
- <genClasses ecoreClass="static_typesystem.ecore#//declaration/DeclaredFunction">
- <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//declaration/DeclaredFunction/declaredParameters"/>
- <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//declaration/DeclaredFunction/declaredTypeParameters"/>
- <genFeatures notify="false" createChild="false" propertySortChoices="true"
- ecoreFeature="ecore:EReference static_typesystem.ecore#//declaration/DeclaredFunction/returnType"/>
- </genClasses>
- <genClasses ecoreClass="static_typesystem.ecore#//declaration/DeclaredProperty"/>
- <genClasses ecoreClass="static_typesystem.ecore#//declaration/DeclaredStaticProperty"/>
- <genClasses ecoreClass="static_typesystem.ecore#//declaration/DeclaredTypeParameter"/>
- <genClasses ecoreClass="static_typesystem.ecore#//declaration/DeclaredParameter"/>
- </nestedGenPackages>
+ <genClasses ecoreClass="static_typesystem.ecore#//FunctionType">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//FunctionType/declaredFunction"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//FunctionType/actualTypeArguments"/>
+ </genClasses>
+ <genClasses ecoreClass="static_typesystem.ecore#//DeclaredType">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//DeclaredType/staticProperties"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//DeclaredType/properties"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//DeclaredType/operations"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//DeclaredType/declaredTypeParameters"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute static_typesystem.ecore#//DeclaredType/backendType"/>
+ </genClasses>
+ <genClasses ecoreClass="static_typesystem.ecore#//DeclaredOperation">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//DeclaredOperation/declaredParameters"/>
+ <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference static_typesystem.ecore#//DeclaredOperation/declaringType"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//DeclaredOperation/returnType"/>
+ </genClasses>
+ <genClasses ecoreClass="static_typesystem.ecore#//DeclaredFunction">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//DeclaredFunction/declaredParameters"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//DeclaredFunction/declaredTypeParameters"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//DeclaredFunction/returnType"/>
+ </genClasses>
+ <genClasses ecoreClass="static_typesystem.ecore#//DeclaredProperty">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//DeclaredProperty/type"/>
+ </genClasses>
+ <genClasses ecoreClass="static_typesystem.ecore#//DeclaredStaticProperty">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//DeclaredStaticProperty/type"/>
+ </genClasses>
+ <genClasses ecoreClass="static_typesystem.ecore#//DeclaredTypeParameter">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//DeclaredTypeParameter/upperBounds"/>
+ </genClasses>
+ <genClasses ecoreClass="static_typesystem.ecore#//DeclaredParameter">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference static_typesystem.ecore#//DeclaredParameter/type"/>
+ </genClasses>
</genPackages>
</genmodel:GenModel>