protected bool doValidateContents(EObject eObject, DiagnosticChain diagnostics, Dictionary <Object, Object> context) { List <EObject> eContents = eObject.eContents(); if (eContents.Count > 0) { bool result = true; foreach (EObject child in eContents) { result &= validate(child, diagnostics, context); } return(result); } else { return(true); } }
private EObject resolveRecurr(Queue <String> path, EObject current) { if (path.Count == 0) { return(current); } String segment = path.Dequeue(); foreach (EObject content in current.eContents()) { if (content is ENamedElement) { if ((content as ENamedElement).name == segment) { return(resolveRecurr(path, content)); } } } return(null); }