org.eclipse.xtext.xtext.ecoreInference
Class TypeHierarchyHelper

java.lang.Object
  extended by org.eclipse.xtext.xtext.ecoreInference.TypeHierarchyHelper

public class TypeHierarchyHelper
extends java.lang.Object

Author:
Heiko Behrens - Initial contribution and API, Sebastian Zarnekow

Constructor Summary
TypeHierarchyHelper(Grammar grammar, EClassifierInfos infos, ErrorAcceptor errorAcceptor)
           
 
Method Summary
 java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature> getCommonFeatures(EClassifierInfo.EClassInfo info, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature> features)
           
 java.util.Set<EClassifierInfo.EClassInfo> getSubTypesOf(EClassifierInfo.EClassInfo info)
           
 void liftUpFeaturesInto(EClassifierInfo.EClassInfo superType, java.util.Map<org.eclipse.emf.ecore.EClass,java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature>> featuresToRemove)
           
 void liftUpFeaturesRecursively()
           
 void liftUpFeaturesRecursively(java.util.Collection<EClassifierInfo.EClassInfo> infos, java.util.Map<org.eclipse.emf.ecore.EClass,java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature>> featuresToRemove)
           
 void removeDuplicateDerivedFeatures()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TypeHierarchyHelper

public TypeHierarchyHelper(Grammar grammar,
                           EClassifierInfos infos,
                           ErrorAcceptor errorAcceptor)
Method Detail

getSubTypesOf

public java.util.Set<EClassifierInfo.EClassInfo> getSubTypesOf(EClassifierInfo.EClassInfo info)

liftUpFeaturesRecursively

public void liftUpFeaturesRecursively(java.util.Collection<EClassifierInfo.EClassInfo> infos,
                                      java.util.Map<org.eclipse.emf.ecore.EClass,java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature>> featuresToRemove)

liftUpFeaturesInto

public void liftUpFeaturesInto(EClassifierInfo.EClassInfo superType,
                               java.util.Map<org.eclipse.emf.ecore.EClass,java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature>> featuresToRemove)

getCommonFeatures

public java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature> getCommonFeatures(EClassifierInfo.EClassInfo info,
                                                                                        java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature> features)

liftUpFeaturesRecursively

public void liftUpFeaturesRecursively()

removeDuplicateDerivedFeatures

public void removeDuplicateDerivedFeatures()