Skip to main content
summaryrefslogtreecommitdiffstats
blob: 3c60aa8e6c1dd6946d6a8fa4ba86a0e1a4adf8b0 (plain) (blame)
1
2
3
4
5
6
7
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
source cs : 'ClassesCS.ecore#/'
target as : 'Classes.ecore#/'

mappings {
	map as::Root from RootCS {
		ownedPackages := ownedPackages.resolve;
	}

	map as::Package from PackageCS {
		name := name;
		ownedClasses := ownedClasses.resolve;
		ownedPackages := ownedPackages.resolve;
	}

	map classes::Class from ClassCS {
		name := name;
		superClass := if _extends = null then null else resolve.lookup(Class,_extends) endif; 
	}	
}


disambiguation {
	
}

nameresolution {
		
	named-element NamedElement name-property name; 	  /*from target */
	name-referencer PathElementCS name-property name; /*from source */
	name-qualifier PathNameCS name-segments-property path; /*from source */
	
	Root {
		scopes
			Package using ownedPackages;
	}
	
	Package {
		named-element 
			qualifies Package using ownedPackages,
					   Class using ownedClasses;
		
		scopes-occluding 
			Package using ownedPackages
			Class using ownedClasses;
	}
	
	Class {
		named-element;
	}
	
}

Back to the top