@Override protected String getUnconvertedLinkText(EObject object, EReference reference, EObject context) { if (reference == XtextPackage.eINSTANCE.getGrammar_UsedGrammars()) return ((Grammar) object).getName(); if (reference == XtextPackage.eINSTANCE.getTypeRef_Metamodel()) return aliasResolver.getValue(object); if (reference == XtextPackage.eINSTANCE.getAbstractMetamodelDeclaration_EPackage()) return ((EPackage) object).getNsURI(); if (object instanceof AbstractRule) return ((AbstractRule) object).getName(); return super.getUnconvertedLinkText(object, reference, context); } }
@Override public List<EObject> getLinkedObjects(EObject context, EReference ref, INode node) throws IllegalNodeException { if (ref == XtextPackage.eINSTANCE.getGrammar_UsedGrammars()) return getUsedGrammar((Grammar) context, node); if (ref == XtextPackage.eINSTANCE.getTypeRef_Metamodel()) return getLinkedMetaModel((TypeRef)context, ref, (ILeafNode) node); if (ref == XtextPackage.eINSTANCE.getAbstractMetamodelDeclaration_EPackage() && context instanceof GeneratedMetamodel) return createPackage((GeneratedMetamodel) context, (ILeafNode) node); if (ref == XtextPackage.eINSTANCE.getAbstractMetamodelDeclaration_EPackage() && context instanceof ReferencedMetamodel) return getPackage((ReferencedMetamodel)context, (ILeafNode) node); return super.getLinkedObjects(context, ref, node); }