mirror of
https://github.com/sigmasternchen/xtext-core
synced 2025-03-15 16:28:56 +00:00
Fixed regression in Xtext generator for type names
This commit is contained in:
parent
193f46ea45
commit
b6a9f76938
2 changed files with 34 additions and 11 deletions
|
@ -156,10 +156,16 @@ class TypeReference {
|
|||
new QualifiedClassName('org.eclipse.emf.ecore', clazz.name)
|
||||
}
|
||||
} else {
|
||||
val genClass = GenModelUtil2.getGenClass(clazz, resourceSet)
|
||||
val packageName = genClass.genPackage.getInterfacePackageName();
|
||||
new QualifiedClassName(packageName,
|
||||
genClass.interfaceName)
|
||||
if (clazz.instanceTypeName !== null) {
|
||||
val itn = clazz.instanceTypeName;
|
||||
new QualifiedClassName(itn.substring(0, itn.lastIndexOf('.')),
|
||||
itn.substring(itn.lastIndexOf(".") + 1).replace("$", "."))
|
||||
} else {
|
||||
val genClass = GenModelUtil2.getGenClass(clazz, resourceSet)
|
||||
val packageName = genClass.genPackage.getInterfacePackageName();
|
||||
new QualifiedClassName(packageName,
|
||||
genClass.interfaceName)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -266,14 +266,31 @@ public class TypeReference {
|
|||
}
|
||||
_xifexpression_1 = _xifexpression_2;
|
||||
} else {
|
||||
TypeReference.QualifiedClassName _xblockexpression_1 = null;
|
||||
{
|
||||
final GenClass genClass = GenModelUtil2.getGenClass(clazz, resourceSet);
|
||||
final String packageName = genClass.getGenPackage().getInterfacePackageName();
|
||||
String _interfaceName = genClass.getInterfaceName();
|
||||
_xblockexpression_1 = new TypeReference.QualifiedClassName(packageName, _interfaceName);
|
||||
TypeReference.QualifiedClassName _xifexpression_3 = null;
|
||||
String _instanceTypeName_1 = clazz.getInstanceTypeName();
|
||||
boolean _tripleNotEquals_1 = (_instanceTypeName_1 != null);
|
||||
if (_tripleNotEquals_1) {
|
||||
TypeReference.QualifiedClassName _xblockexpression_1 = null;
|
||||
{
|
||||
final String itn = clazz.getInstanceTypeName();
|
||||
String _substring = itn.substring(0, itn.lastIndexOf("."));
|
||||
int _lastIndexOf = itn.lastIndexOf(".");
|
||||
int _plus = (_lastIndexOf + 1);
|
||||
String _replace = itn.substring(_plus).replace("$", ".");
|
||||
_xblockexpression_1 = new TypeReference.QualifiedClassName(_substring, _replace);
|
||||
}
|
||||
_xifexpression_3 = _xblockexpression_1;
|
||||
} else {
|
||||
TypeReference.QualifiedClassName _xblockexpression_2 = null;
|
||||
{
|
||||
final GenClass genClass = GenModelUtil2.getGenClass(clazz, resourceSet);
|
||||
final String packageName = genClass.getGenPackage().getInterfacePackageName();
|
||||
String _interfaceName = genClass.getInterfaceName();
|
||||
_xblockexpression_2 = new TypeReference.QualifiedClassName(packageName, _interfaceName);
|
||||
}
|
||||
_xifexpression_3 = _xblockexpression_2;
|
||||
}
|
||||
_xifexpression_1 = _xblockexpression_1;
|
||||
_xifexpression_1 = _xifexpression_3;
|
||||
}
|
||||
_xifexpression = _xifexpression_1;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue