languages.ecore 6.82 KB
Newer Older
Florian Hölzl's avatar
Florian Hölzl committed
1
2
3
4
5
6
7
<?xml version="1.0" encoding="UTF-8"?>
<ecore:EPackage xmi:version="2.0"
    xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="model"
    nsURI="http://www.fortiss.org/af3/generator/common/languages" nsPrefix="org-fortiss-af3-generator-common-languages">
  <eSubpackages name="source" nsURI="http://www.fortiss.org/af3/generator/common/languages/source"
      nsPrefix="org-fortiss-af3-generator-common-languages-source">
Florian Hölzl's avatar
Florian Hölzl committed
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
    <eClassifiers xsi:type="ecore:EClass" name="SourcePackage">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="Composite class for source packages containing other packages and source units. Each package has a base location."/>
      </eAnnotations>
      <eOperations name="writeToLocation">
        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
          <details key="documentation" value="Writes this source package to the given location."/>
        </eAnnotations>
        <eParameters name="rootLocation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
      </eOperations>
      <eOperations name="writeContentToLocation">
        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
          <details key="documentation" value="Writes the content of this source package to the given location."/>
        </eAnnotations>
        <eParameters name="rootLocation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
      </eOperations>
      <eStructuralFeatures xsi:type="ecore:EAttribute" name="baseLocation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
      <eStructuralFeatures xsi:type="ecore:EReference" name="subPackages" upperBound="-1"
          eType="#//source/SourcePackage" containment="true"/>
      <eStructuralFeatures xsi:type="ecore:EReference" name="units" upperBound="-1"
          eType="#//source/SourceUnit" containment="true"/>
    </eClassifiers>
    <eClassifiers xsi:type="ecore:EClass" name="SourceUnit">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="A unit of source code with a name (and possibly representing executable code). Each unit has three sections: imports, followed by declarations, followed by definitions."/>
      </eAnnotations>
      <eOperations name="toSource" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
          <details key="documentation" value="Converts this unit into a String."/>
        </eAnnotations>
      </eOperations>
      <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
      <eStructuralFeatures xsi:type="ecore:EAttribute" name="executable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
      <eStructuralFeatures xsi:type="ecore:EReference" name="imports" upperBound="-1"
          eType="#//source/Import" containment="true"/>
      <eStructuralFeatures xsi:type="ecore:EReference" name="declarations" upperBound="-1"
          eType="#//source/Declaration" containment="true"/>
      <eStructuralFeatures xsi:type="ecore:EReference" name="definitions" upperBound="-1"
          eType="#//source/Definition" containment="true"/>
    </eClassifiers>
    <eClassifiers xsi:type="ecore:EClass" name="Import">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="Base class for imports (e.g. C includes or Java imports)."/>
      </eAnnotations>
      <eStructuralFeatures xsi:type="ecore:EAttribute" name="sourceUnitReference"
          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    </eClassifiers>
    <eClassifiers xsi:type="ecore:EClass" name="Declaration">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="Base class for declarations (e.g. C forward declarations)."/>
      </eAnnotations>
    </eClassifiers>
    <eClassifiers xsi:type="ecore:EClass" name="Definition">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="Base class for definitions (e.g. C function implementation or Java methods)."/>
      </eAnnotations>
    </eClassifiers>
    <eClassifiers xsi:type="ecore:EClass" name="FormattedSourceUnit" eSuperTypes="#//source/SourceUnit">
      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="documentation" value="Base class for formatted source units."/>
      </eAnnotations>
      <eOperations name="toFormattedSource" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
          <details key="documentation" value="Returns the formatted content of this source unit."/>
        </eAnnotations>
      </eOperations>
      <eOperations name="toSource" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
          <details key="documentation" value="Same as toFormattedSource()."/>
        </eAnnotations>
      </eOperations>
    </eClassifiers>
Florian Hölzl's avatar
Florian Hölzl committed
80
81
  </eSubpackages>
  <eSubpackages name="c" nsURI="http://www.fortiss.org/af3/generator/common/languages/c"
Florian Hölzl's avatar
Florian Hölzl committed
82
83
84
85
86
87
88
89
90
91
      nsPrefix="org-fortiss-af3-generator-common-languages-c">
    <eClassifiers xsi:type="ecore:EClass" name="HeaderFile" eSuperTypes="#//source/FormattedSourceUnit"/>
    <eClassifiers xsi:type="ecore:EClass" name="ImplementationFile" eSuperTypes="#//source/FormattedSourceUnit"/>
    <eClassifiers xsi:type="ecore:EEnum" name="Modifier">
      <eLiterals name="EXTERN"/>
      <eLiterals name="STATIC" value="1"/>
      <eLiterals name="NONE" value="2" literal=""/>
    </eClassifiers>
    <eClassifiers xsi:type="ecore:EClass" name="PreProcessorDefine" eSuperTypes="#//source/Declaration"/>
    <eClassifiers xsi:type="ecore:EClass" name="Include" eSuperTypes="#//source/Import"/>
Florian Hölzl's avatar
Florian Hölzl committed
92
93
94
95
96
97
98
99
    <eClassifiers xsi:type="ecore:EClass" name="FunctionDeclaration" eSuperTypes="#//source/Declaration">
      <eStructuralFeatures xsi:type="ecore:EReference" name="definition" eType="#//c/FunctionDefinition"
          eOpposite="#//c/FunctionDefinition/declaration"/>
    </eClassifiers>
    <eClassifiers xsi:type="ecore:EClass" name="FunctionDefinition" eSuperTypes="#//source/Definition">
      <eStructuralFeatures xsi:type="ecore:EReference" name="declaration" eType="#//c/FunctionDeclaration"
          eOpposite="#//c/FunctionDeclaration/definition"/>
    </eClassifiers>
Florian Hölzl's avatar
Florian Hölzl committed
100
    <eClassifiers xsi:type="ecore:EClass" name="CSourcePackage" eSuperTypes="#//source/SourcePackage"/>
Florian Hölzl's avatar
Florian Hölzl committed
101
  </eSubpackages>
Florian Hölzl's avatar
Florian Hölzl committed
102
</ecore:EPackage>