Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Openas Menu and completion for inheritance and slice roots #39

Open
wants to merge 15 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions examples/SimpleAspectsProject/plugin.xml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@
<language
exactType="simpleaspects.FsmMT"
uri="http://fsm/"
id="simpleaspects.Fsm">
id="simpleaspects.Fsm"
fileExtension="fsm">
<adapter
class="simpleaspects.fsm.adapters.fsmmt.FsmAdapter"
modeltypeId="simpleaspects.FsmMT">
Expand All @@ -29,7 +30,8 @@
<language
exactType="simpleaspects.TimedFsmMT"
uri="http://timedfsm/"
id="simpleaspects.TimedFsm">
id="simpleaspects.TimedFsm"
fileExtension="timedfsm">
<adapter
class="simpleaspects.timedfsm.adapters.fsmmt.TimedFsmAdapter"
modeltypeId="simpleaspects.FsmMT">
Expand Down
6 changes: 4 additions & 2 deletions examples/SimpleFsmProject/plugin.xml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@
<language
exactType="simplefsm.FsmMT"
uri="http://fsm/"
id="simplefsm.Fsm">
id="simplefsm.Fsm"
fileExtension="fsm">
<adapter
class="simplefsm.fsm.adapters.fsmmt.FsmAdapter"
modeltypeId="simplefsm.FsmMT">
Expand All @@ -29,7 +30,8 @@
<language
exactType="simplefsm.TimedFsmMT"
uri="http://timedfsm/"
id="simplefsm.TimedFsm">
id="simplefsm.TimedFsm"
fileExtension="timedfsm">
<adapter
class="simplefsm.timedfsm.adapters.fsmmt.TimedFsmAdapter"
modeltypeId="simplefsm.FsmMT">
Expand Down
13 changes: 6 additions & 7 deletions plugins/fr.inria.diverse.melange.metamodel/model/Melange.ecore
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Transformation" abstract="true" eSuperTypes="#//NamedElement"/>
<eClassifiers xsi:type="ecore:EClass" name="Aspect">
<eStructuralFeatures xsi:type="ecore:EReference" name="aspectTypeRef" lowerBound="1"
eType="ecore:EClass ../../org.eclipse.xtext.common.types/model/JavaVMTypes.ecore#//JvmTypeReference"
<eStructuralFeatures xsi:type="ecore:EReference" name="aspectTypeRef" eType="ecore:EClass ../../org.eclipse.xtext.common.types/model/JavaVMTypes.ecore#//JvmTypeReference"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="aspectedClass" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EClass"
transient="true" derived="true"/>
Expand Down Expand Up @@ -68,14 +67,14 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="to" eType="#//ModelType"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ClassBinding">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="from" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="to" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="properties" upperBound="-1"
eType="#//PropertyBinding" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="from" lowerBound="1" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EClassifier"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="PropertyBinding">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="from" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="to" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="from" lowerBound="1" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//ETypedElement"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Operator" abstract="true">
<eStructuralFeatures xsi:type="ecore:EReference" name="owningLanguage" eType="#//Language"
Expand All @@ -97,16 +96,16 @@
<eClassifiers xsi:type="ecore:EClass" name="Slice" eSuperTypes="#//Operator">
<eStructuralFeatures xsi:type="ecore:EReference" name="slicedLanguage" lowerBound="1"
eType="#//Language"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="roots" upperBound="-1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="mappingRules" upperBound="-1"
eType="#//PackageBinding" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="roots" upperBound="-1"
eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EClass"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="PackageBinding">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="from" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="to" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="classes" upperBound="-1"
eType="#//ClassBinding" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="from" lowerBound="1" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EPackage"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Language" eSuperTypes="#//NamedElement">
<eStructuralFeatures xsi:type="ecore:EReference" name="operators" upperBound="-1"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,13 +56,13 @@
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Melange.ecore#//Mapping/to"/>
</genClasses>
<genClasses ecoreClass="Melange.ecore#//ClassBinding">
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EAttribute Melange.ecore#//ClassBinding/from"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EAttribute Melange.ecore#//ClassBinding/to"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Melange.ecore#//ClassBinding/properties"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Melange.ecore#//ClassBinding/from"/>
</genClasses>
<genClasses ecoreClass="Melange.ecore#//PropertyBinding">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute Melange.ecore#//PropertyBinding/from"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute Melange.ecore#//PropertyBinding/to"/>
<genFeatures createChild="false" ecoreFeature="ecore:EReference Melange.ecore#//PropertyBinding/from"/>
</genClasses>
<genClasses ecoreClass="Melange.ecore#//Operator">
<genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference Melange.ecore#//Operator/owningLanguage"/>
Expand All @@ -78,13 +78,13 @@
</genClasses>
<genClasses ecoreClass="Melange.ecore#//Slice">
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Melange.ecore#//Slice/slicedLanguage"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EAttribute Melange.ecore#//Slice/roots"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Melange.ecore#//Slice/mappingRules"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference Melange.ecore#//Slice/roots"/>
</genClasses>
<genClasses ecoreClass="Melange.ecore#//PackageBinding">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute Melange.ecore#//PackageBinding/from"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute Melange.ecore#//PackageBinding/to"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Melange.ecore#//PackageBinding/classes"/>
<genFeatures createChild="false" ecoreFeature="ecore:EReference Melange.ecore#//PackageBinding/from"/>
</genClasses>
<genClasses ecoreClass="Melange.ecore#//Language">
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Melange.ecore#//Language/operators"/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,12 @@
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link fr.inria.diverse.melange.metamodel.melange.Aspect#getAspectTypeRef <em>Aspect Type Ref</em>}</li>
* <li>{@link fr.inria.diverse.melange.metamodel.melange.Aspect#getAspectedClass <em>Aspected Class</em>}</li>
* <li>{@link fr.inria.diverse.melange.metamodel.melange.Aspect#getEcoreFragment <em>Ecore Fragment</em>}</li>
* </ul>
* </p>
*
* @see fr.inria.diverse.melange.metamodel.melange.MelangePackage#getAspect()
* @model
Expand All @@ -38,7 +38,7 @@ public interface Aspect extends EObject {
* @return the value of the '<em>Aspect Type Ref</em>' containment reference.
* @see #setAspectTypeRef(JvmTypeReference)
* @see fr.inria.diverse.melange.metamodel.melange.MelangePackage#getAspect_AspectTypeRef()
* @model containment="true" required="true"
* @model containment="true"
* @generated
*/
JvmTypeReference getAspectTypeRef();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

import org.eclipse.emf.common.util.EList;

import org.eclipse.emf.ecore.EClassifier;
import org.eclipse.emf.ecore.EObject;

/**
Expand All @@ -13,44 +14,18 @@
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link fr.inria.diverse.melange.metamodel.melange.ClassBinding#getFrom <em>From</em>}</li>
* <li>{@link fr.inria.diverse.melange.metamodel.melange.ClassBinding#getTo <em>To</em>}</li>
* <li>{@link fr.inria.diverse.melange.metamodel.melange.ClassBinding#getProperties <em>Properties</em>}</li>
* <li>{@link fr.inria.diverse.melange.metamodel.melange.ClassBinding#getFrom <em>From</em>}</li>
* </ul>
* </p>
*
* @see fr.inria.diverse.melange.metamodel.melange.MelangePackage#getClassBinding()
* @model
* @generated
*/
public interface ClassBinding extends EObject {
/**
* Returns the value of the '<em><b>From</b></em>' attribute.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>From</em>' attribute isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>From</em>' attribute.
* @see #setFrom(String)
* @see fr.inria.diverse.melange.metamodel.melange.MelangePackage#getClassBinding_From()
* @model
* @generated
*/
String getFrom();

/**
* Sets the value of the '{@link fr.inria.diverse.melange.metamodel.melange.ClassBinding#getFrom <em>From</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>From</em>' attribute.
* @see #getFrom()
* @generated
*/
void setFrom(String value);

/**
* Returns the value of the '<em><b>To</b></em>' attribute.
* <!-- begin-user-doc -->
Expand Down Expand Up @@ -93,4 +68,30 @@ public interface ClassBinding extends EObject {
*/
EList<PropertyBinding> getProperties();

/**
* Returns the value of the '<em><b>From</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>From</em>' reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>From</em>' reference.
* @see #setFrom(EClassifier)
* @see fr.inria.diverse.melange.metamodel.melange.MelangePackage#getClassBinding_From()
* @model required="true"
* @generated
*/
EClassifier getFrom();

/**
* Sets the value of the '{@link fr.inria.diverse.melange.metamodel.melange.ClassBinding#getFrom <em>From</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>From</em>' reference.
* @see #getFrom()
* @generated
*/
void setFrom(EClassifier value);

} // ClassBinding
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link fr.inria.diverse.melange.metamodel.melange.Import#getEcoreUri <em>Ecore Uri</em>}</li>
* <li>{@link fr.inria.diverse.melange.metamodel.melange.Import#getGenmodelUris <em>Genmodel Uris</em>}</li>
* <li>{@link fr.inria.diverse.melange.metamodel.melange.Import#getMappingRules <em>Mapping Rules</em>}</li>
* </ul>
* </p>
*
* @see fr.inria.diverse.melange.metamodel.melange.MelangePackage#getImport()
* @model
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,10 @@
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link fr.inria.diverse.melange.metamodel.melange.Inheritance#getSuperLanguage <em>Super Language</em>}</li>
* </ul>
* </p>
*
* @see fr.inria.diverse.melange.metamodel.melange.MelangePackage#getInheritance()
* @model
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link fr.inria.diverse.melange.metamodel.melange.Language#getOperators <em>Operators</em>}</li>
* <li>{@link fr.inria.diverse.melange.metamodel.melange.Language#getExactType <em>Exact Type</em>}</li>
Expand All @@ -27,7 +28,6 @@
* <li>{@link fr.inria.diverse.melange.metamodel.melange.Language#getMappings <em>Mappings</em>}</li>
* <li>{@link fr.inria.diverse.melange.metamodel.melange.Language#getSemantics <em>Semantics</em>}</li>
* </ul>
* </p>
*
* @see fr.inria.diverse.melange.metamodel.melange.MelangePackage#getLanguage()
* @model
Expand Down Expand Up @@ -297,7 +297,7 @@ public interface Language extends NamedElement {
* The list contents are of type {@link fr.inria.diverse.melange.metamodel.melange.Aspect}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Semantics</em>' reference list isn't clear,
* If the meaning of the '<em>Semantics</em>' containment reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link fr.inria.diverse.melange.metamodel.melange.Mapping#getRules <em>Rules</em>}</li>
* <li>{@link fr.inria.diverse.melange.metamodel.melange.Mapping#getFrom <em>From</em>}</li>
* <li>{@link fr.inria.diverse.melange.metamodel.melange.Mapping#getTo <em>To</em>}</li>
* </ul>
* </p>
*
* @see fr.inria.diverse.melange.metamodel.melange.MelangePackage#getMapping()
* @model
Expand Down
Loading