| import cs : 'ClassesCS.ecore#/' |
| import as : 'Classes.ecore#/' |
| import 'classescs2asLookup.ocl' |
| import 'classescs2asDisambiguation.ocl' |
| package cs |
| |
| context RootCS |
| def : ast() : as::Root = |
| as::Root { |
| ownedPackages = ownedPackages.ast() |
| } |
| context PackageCS |
| def : ast() : as::Package = |
| as::Package { |
| name = name, |
| ownedClasses = ownedClasses.ast(), |
| ownedPackages = ownedPackages.ast() |
| } |
| context ClassCS |
| def : ast() : classes::Class = |
| classes::Class { |
| name = name, |
| superClass = if _extends = null then null else ast() .lookupClass(_extends) endif |
| } |
| endpackage |