blob: 675f4dd004b8e71fb2159d4ebc8829ccef357769 [file] [log] [blame]
<?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="typerules"
nsURI="http:///typerules.ecore" nsPrefix="typerules">
<eClassifiers xsi:type="ecore:EClass" name="RuleSet">
<eStructuralFeatures xsi:type="ecore:EReference" name="extends" eType="#//RuleSet"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="typerules" upperBound="-1"
eType="#//TypeRule" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="TypeJudgement" abstract="true">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="isValid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
defaultValueLiteral="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="result" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="UnaryTypeJudgement" eSuperTypes="#//TypeJudgement">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="operand" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="BinaryTypeJudgement" eSuperTypes="#//TypeJudgement">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="firstOperand" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="secondOperand" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="TypeRule">
<eStructuralFeatures xsi:type="ecore:EReference" name="judgements" upperBound="-1"
eType="#//TypeJudgement" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="operator" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CustomTypeJudgement" eSuperTypes="#//TypeJudgement">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="operands" upperBound="-1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
</ecore:EPackage>