org.eclipse.xtext.serializer.sequencer
Class ContextFinder

java.lang.Object
  extended by org.eclipse.xtext.serializer.sequencer.ContextFinder
All Implemented Interfaces:
IContextFinder

public class ContextFinder
extends java.lang.Object
implements IContextFinder

Author:
Moritz Eysholdt - Initial contribution and API

Field Summary
protected  IAssignmentFinder assignmentFinder
           
protected  java.util.List<IGrammarConstraintProvider.IConstraintContext> constraintContexts
           
protected  java.util.Map<Pair<org.eclipse.emf.ecore.EObject,org.eclipse.emf.ecore.EClass>,IGrammarConstraintProvider.IConstraint> constraints
           
protected  IGrammarAccess grammar
           
protected  IGrammarConstraintProvider grammarConstraintProvider
           
protected  TransientValueUtil transientValueUtil
           
 
Constructor Summary
ContextFinder()
           
 
Method Summary
protected  java.lang.Iterable<AbstractElement> findAssignedElements(org.eclipse.emf.ecore.EObject obj, org.eclipse.emf.ecore.EStructuralFeature feature, java.lang.Iterable<AbstractElement> candidates)
           
protected  java.lang.Iterable<org.eclipse.emf.ecore.EObject> findContextsByContainer(org.eclipse.emf.ecore.EObject semanticObject, java.lang.Iterable<org.eclipse.emf.ecore.EObject> contextCandidates)
           
 java.lang.Iterable<org.eclipse.emf.ecore.EObject> findContextsByContents(org.eclipse.emf.ecore.EObject semanticObject, java.lang.Iterable<org.eclipse.emf.ecore.EObject> contextCandidates)
           
 java.lang.Iterable<org.eclipse.emf.ecore.EObject> findContextsByContentsAndContainer(org.eclipse.emf.ecore.EObject semanticObject, java.lang.Iterable<org.eclipse.emf.ecore.EObject> contextCandidates)
           
protected  java.util.Collection<IGrammarConstraintProvider.IConstraint> findContextsByValue(org.eclipse.emf.ecore.EObject semanicObj, org.eclipse.emf.ecore.EStructuralFeature feature, java.lang.Iterable<IGrammarConstraintProvider.IConstraint> constraints)
           
protected  java.util.Map<IGrammarConstraintProvider.IConstraint,java.util.List<org.eclipse.emf.ecore.EObject>> getConstraints(org.eclipse.emf.ecore.EClass cls)
           
protected  java.util.Map<IGrammarConstraintProvider.IConstraint,java.util.List<org.eclipse.emf.ecore.EObject>> getConstraints(org.eclipse.emf.ecore.EObject semanticObject, java.lang.Iterable<org.eclipse.emf.ecore.EObject> contextCandidates)
           
protected  org.eclipse.emf.ecore.EObject getRootContext()
           
protected  void initConstraints()
           
protected  boolean intersect(java.lang.Iterable<org.eclipse.emf.ecore.EObject> it1, java.lang.Iterable<org.eclipse.emf.ecore.EObject> it2)
           
protected  boolean isMandatory(IGrammarConstraintProvider.IFeatureInfo feature)
           
protected  boolean isValidValueQuantity(IGrammarConstraintProvider.IConstraint constraint, org.eclipse.emf.ecore.EObject semanicObj)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

assignmentFinder

@Inject
protected IAssignmentFinder assignmentFinder

constraintContexts

protected java.util.List<IGrammarConstraintProvider.IConstraintContext> constraintContexts

constraints

protected java.util.Map<Pair<org.eclipse.emf.ecore.EObject,org.eclipse.emf.ecore.EClass>,IGrammarConstraintProvider.IConstraint> constraints

grammar

@Inject
protected IGrammarAccess grammar

grammarConstraintProvider

@Inject
protected IGrammarConstraintProvider grammarConstraintProvider

transientValueUtil

@Inject
protected TransientValueUtil transientValueUtil
Constructor Detail

ContextFinder

public ContextFinder()
Method Detail

findAssignedElements

protected java.lang.Iterable<AbstractElement> findAssignedElements(org.eclipse.emf.ecore.EObject obj,
                                                                   org.eclipse.emf.ecore.EStructuralFeature feature,
                                                                   java.lang.Iterable<AbstractElement> candidates)

findContextsByContainer

protected java.lang.Iterable<org.eclipse.emf.ecore.EObject> findContextsByContainer(org.eclipse.emf.ecore.EObject semanticObject,
                                                                                    java.lang.Iterable<org.eclipse.emf.ecore.EObject> contextCandidates)

findContextsByContents

public java.lang.Iterable<org.eclipse.emf.ecore.EObject> findContextsByContents(org.eclipse.emf.ecore.EObject semanticObject,
                                                                                java.lang.Iterable<org.eclipse.emf.ecore.EObject> contextCandidates)
Specified by:
findContextsByContents in interface IContextFinder

findContextsByContentsAndContainer

public java.lang.Iterable<org.eclipse.emf.ecore.EObject> findContextsByContentsAndContainer(org.eclipse.emf.ecore.EObject semanticObject,
                                                                                            java.lang.Iterable<org.eclipse.emf.ecore.EObject> contextCandidates)
Specified by:
findContextsByContentsAndContainer in interface IContextFinder

findContextsByValue

protected java.util.Collection<IGrammarConstraintProvider.IConstraint> findContextsByValue(org.eclipse.emf.ecore.EObject semanicObj,
                                                                                           org.eclipse.emf.ecore.EStructuralFeature feature,
                                                                                           java.lang.Iterable<IGrammarConstraintProvider.IConstraint> constraints)

getConstraints

protected java.util.Map<IGrammarConstraintProvider.IConstraint,java.util.List<org.eclipse.emf.ecore.EObject>> getConstraints(org.eclipse.emf.ecore.EClass cls)

getConstraints

protected java.util.Map<IGrammarConstraintProvider.IConstraint,java.util.List<org.eclipse.emf.ecore.EObject>> getConstraints(org.eclipse.emf.ecore.EObject semanticObject,
                                                                                                                             java.lang.Iterable<org.eclipse.emf.ecore.EObject> contextCandidates)

getRootContext

protected org.eclipse.emf.ecore.EObject getRootContext()

initConstraints

protected void initConstraints()

intersect

protected boolean intersect(java.lang.Iterable<org.eclipse.emf.ecore.EObject> it1,
                            java.lang.Iterable<org.eclipse.emf.ecore.EObject> it2)

isMandatory

protected boolean isMandatory(IGrammarConstraintProvider.IFeatureInfo feature)

isValidValueQuantity

protected boolean isValidValueQuantity(IGrammarConstraintProvider.IConstraint constraint,
                                       org.eclipse.emf.ecore.EObject semanicObj)