From 00120651918ddda0e97394a4ed36bcbbe7dcba99 Mon Sep 17 00:00:00 2001 From: Adolfo SBH Date: Mon, 21 Mar 2016 18:27:45 +0000 Subject: [cs2as] - Redefining Example2 to support aliases --- .../tests/models/example2/EnvExample2.ecore | 30 ++++++++++++++++++---- .../tests/models/example2/classescs2asLookup.ocl | 4 +-- .../tests/models/example2/classescs2asV2Lookup.ocl | 8 +++--- 3 files changed, 31 insertions(+), 11 deletions(-) (limited to 'tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models') diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/EnvExample2.ecore b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/EnvExample2.ecore index 946f0ea0a..501c9db39 100644 --- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/EnvExample2.ecore +++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/EnvExample2.ecore @@ -12,7 +12,7 @@ -
+
@@ -25,12 +25,25 @@ -
+
- + - + + +
+ + + + + + +
+ + + + @@ -45,6 +58,13 @@ + + + + + diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/classescs2asLookup.ocl b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/classescs2asLookup.ocl index a63a28672..4a1166059 100644 --- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/classescs2asLookup.ocl +++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/classescs2asLookup.ocl @@ -82,7 +82,7 @@ def : _unqualified_env_Class(child : ocl::OclElement) : lookup::LookupEnvironmen context Visitable -- Package lookup def : _lookupPackage(env : lookup::LookupEnvironment, pName : String) : OrderedSet(Package) = -let foundPackage = env.namedElements->selectByKind(Package)->select(name = pName) +let foundPackage = env.getNamedElements(pName)->selectByKind(Package) in if foundPackage->isEmpty() and not (env.parentEnv = null) then _lookupPackage(env.parentEnv, pName) else foundPackage @@ -114,7 +114,7 @@ def : lookupPackage(segments : OrderedSet(cs::PathElementCS)) : Package[?] = -- Class lookup def : _lookupClass(env : lookup::LookupEnvironment, cName : String) : OrderedSet(Class) = -let foundClass = env.namedElements->selectByKind(Class)->select(name = cName) +let foundClass = env.getNamedElements(cName)->selectByKind(Class) in if foundClass->isEmpty() and not (env.parentEnv = null) then _lookupClass(env.parentEnv, cName) else foundClass diff --git a/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/classescs2asV2Lookup.ocl b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/classescs2asV2Lookup.ocl index c4a4b6669..1b5a56220 100644 --- a/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/classescs2asV2Lookup.ocl +++ b/tests/org.eclipse.qvtd.cs2as.compiler.tests/src/org/eclipse/qvtd/cs2as/compiler/tests/models/example2/classescs2asV2Lookup.ocl @@ -187,7 +187,7 @@ def : _appliesFilter_Operation(args : OrderedSet(Argument)) : Boolean = context Visitable -- Package lookup def : _lookupPackage(env : lookup::LookupEnvironment, pName : String) : OrderedSet(Package) = -let foundPackage = env.namedElements->selectByKind(Package)->select(name = pName) +let foundPackage = env.getNamedElements(pName)->selectByKind(Package) in if foundPackage->isEmpty() and not (env.parentEnv = null) then _lookupPackage(env.parentEnv, pName) else foundPackage @@ -219,7 +219,7 @@ def : lookupPackage(segments : OrderedSet(cs::PathElementCS)) : Package[?] = -- Class lookup def : _lookupClass(env : lookup::LookupEnvironment, cName : String) : OrderedSet(Class) = -let foundClass = env.namedElements->selectByKind(Class)->select(name = cName) +let foundClass = env.getNamedElements(cName)->selectByKind(Class) in if foundClass->isEmpty() and not (env.parentEnv = null) then _lookupClass(env.parentEnv, cName) else foundClass @@ -281,7 +281,7 @@ def : lookupPropertyFrom(exporter : Class, segments : OrderedSet(cs::PathElement endif -- Operation lookup def : _lookupOperation(env : lookup::LookupEnvironment, oName : String, args : OrderedSet(Argument)) : OrderedSet(Operation) = -let foundOperation = env.namedElements->selectByKind(Operation)->select(name = oName) +let foundOperation = env.getNamedElements(oName)->selectByKind(Operation) ->select(_appliesFilter_Operation(args)) in if foundOperation->isEmpty() and not (env.parentEnv = null) then _lookupOperation(env.parentEnv, oName, args) @@ -314,7 +314,7 @@ def : lookupOperation(segments : OrderedSet(cs::PathElementCS), args : OrderedSe -- Property lookup def : _lookupProperty(env : lookup::LookupEnvironment, pName : String) : OrderedSet(Property) = -let foundProperty = env.namedElements->selectByKind(Property)->select(name = pName) +let foundProperty = env.getNamedElements(pName)->selectByKind(Property) in if foundProperty->isEmpty() and not (env.parentEnv = null) then _lookupProperty(env.parentEnv, pName) else foundProperty -- cgit v1.2.3