protected void _createChildren(IOutlineNode parentNode, XtendClass xtendClass) {
   JvmGenericType inferredType = associations.getInferredType(xtendClass);
   if (inferredType != null) {
     Set<XtendFunction> dispatchFunctions = newHashSet();
     for (XtendMember member : xtendClass.getMembers()) {
       if (!dispatchFunctions.contains(member)
           && member instanceof XtendFunction
           && ((XtendFunction) member).isDispatch()) {
         for (JvmOperation inferredOperation :
             filter(associations.getJvmElements(member), JvmOperation.class)) {
           if (dispatchUtil.isDispatcherFunction(inferredOperation)) {
             createEObjectNode(parentNode, inferredOperation);
             final Set<EObject> xtendFunctions = associations.getSourceElements(inferredOperation);
             dispatchFunctions.addAll(newArrayList(filter(xtendFunctions, XtendFunction.class)));
           }
         }
       }
     }
     for (XtendMember member : xtendClass.getMembers()) {
       if (!dispatchFunctions.contains(member)) createEObjectNode(parentNode, member);
     }
   } else {
     for (XtendMember member : xtendClass.getMembers()) createEObjectNode(parentNode, member);
   }
 }
 protected void _createChildren(IOutlineNode parentNode, JvmOperation inferredOperation) {
   List<XtendFunction> xtendFunctions =
       newArrayList(
           filter(associations.getSourceElements(inferredOperation), XtendFunction.class));
   sort(
       xtendFunctions,
       new Comparator<XtendFunction>() {
         public int compare(XtendFunction arg0, XtendFunction arg1) {
           return index(arg0) - index(arg1);
         }
       });
   for (XtendFunction xtendFunction : xtendFunctions) {
     if (xtendFunction.isDispatch()) createEObjectNode(parentNode, xtendFunction);
   }
 }
 protected void _createChildren(DocumentRootNode parentNode, XtendFile xtendFile) {
   if (xtendFile.getPackage() != null)
     createEStructuralFeatureNode(
         parentNode,
         xtendFile,
         Xtend2Package.Literals.XTEND_FILE__PACKAGE,
         images.forPackage(),
         xtendFile.getPackage(),
         true);
   if (!xtendFile.getImports().isEmpty())
     createEStructuralFeatureNode(
         parentNode,
         xtendFile,
         Xtend2Package.Literals.XTEND_FILE__IMPORTS,
         images.forImportContainer(),
         "import declarations",
         false);
   if (xtendFile.getXtendClass() != null) createEObjectNode(parentNode, xtendFile.getXtendClass());
 }