org.eclipse.xtext.serializer.sequencer
Class GenericSemanticSequencer
java.lang.Object
org.eclipse.xtext.serializer.sequencer.AbstractSemanticSequencer
org.eclipse.xtext.serializer.sequencer.GenericSemanticSequencer
- All Implemented Interfaces:
- ISemanticSequencer
public class GenericSemanticSequencer
- extends AbstractSemanticSequencer
- Author:
- Moritz Eysholdt - Initial contribution and API
Method Summary |
protected void |
acceptAction(Action action,
org.eclipse.emf.ecore.EObject semanticChild,
ICompositeNode node)
|
protected void |
acceptEObjectRuleCall(RuleCall ruleCall,
org.eclipse.emf.ecore.EObject semanticChild,
ICompositeNode node)
|
protected boolean |
acceptSemantic(org.eclipse.emf.ecore.EObject semanticObj,
IGrammarConstraintProvider.IConstraintElement constr,
java.lang.Object value,
int index,
INode node)
|
protected boolean |
containsUnavailableFeature(GenericSemanticSequencer.Feature2Assignment[] values,
IGrammarConstraintProvider.IConstraintElement element,
IGrammarConstraintProvider.IConstraintElement excludeAssignment)
|
void |
createSequence(org.eclipse.emf.ecore.EObject context,
org.eclipse.emf.ecore.EObject semanticObject)
|
protected java.util.List<? extends GenericSemanticSequencer.Allocation> |
createUnambiguousAllocation(IGrammarConstraintProvider.IConstraintElement constraint,
GenericSemanticSequencer.Feature2Assignment[] values)
|
protected GenericSemanticSequencer.Feature2Assignment[] |
createValues(org.eclipse.emf.ecore.EObject semanticObject,
IGrammarConstraintProvider.IConstraint constraint,
ISemanticNodeProvider.INodesForEObjectProvider nodes)
|
protected void |
createValues(org.eclipse.emf.ecore.EObject semanticObj,
IGrammarConstraintProvider.IFeatureInfo feature,
boolean optional,
GenericSemanticSequencer.AllocationValue value,
GenericSemanticSequencer.Feature2Assignment[] target)
|
protected void |
createValues(org.eclipse.emf.ecore.EObject semanticObj,
IGrammarConstraintProvider.IFeatureInfo feature,
java.util.List<GenericSemanticSequencer.AllocationValue> values,
GenericSemanticSequencer.Feature2Assignment[] target)
|
protected void |
distributeValuesByQuantity(java.util.List<IGrammarConstraintProvider.IConstraintElement> assignments,
java.util.List<GenericSemanticSequencer.AllocationValue> values,
GenericSemanticSequencer.Feature2Assignment[] target)
|
protected java.lang.String |
f2aToStr(IGrammarConstraintProvider.IConstraintElement ele,
GenericSemanticSequencer.Feature2Assignment[] values)
|
protected void |
f2aToStr(IGrammarConstraintProvider.IConstraintElement ele,
GenericSemanticSequencer.Feature2Assignment[] values,
java.lang.String prefix,
java.lang.StringBuilder result)
|
protected java.util.List<IGrammarConstraintProvider.IConstraintElement> |
findValidAssignments(org.eclipse.emf.ecore.EObject semanticObj,
IGrammarConstraintProvider.IConstraintElement[] assignments,
GenericSemanticSequencer.AllocationValue value)
|
protected java.util.List<IGrammarConstraintProvider.IConstraintElement> |
findValidAssignments(org.eclipse.emf.ecore.EObject semanticObj,
java.util.List<IGrammarConstraintProvider.IConstraintElement> assignments,
java.util.List<GenericSemanticSequencer.AllocationValue> values)
|
protected IGrammarConstraintProvider.IConstraint |
getConstraint(org.eclipse.emf.ecore.EObject context,
org.eclipse.emf.ecore.EClass type)
|
protected java.util.List<GenericSemanticSequencer.AllocationValue> |
getNonTransientValuesForMVFeature(org.eclipse.emf.ecore.EObject semanticObject,
IGrammarConstraintProvider.IFeatureInfo feature,
ISemanticNodeProvider.INodesForEObjectProvider nodes)
|
protected void |
initConstraints()
|
protected boolean |
isAmbiguous(GenericSemanticSequencer.Feature2Assignment[] allocations)
|
protected boolean |
isExcludedByDependees(IGrammarConstraintProvider.IConstraintElement assignments,
GenericSemanticSequencer.Feature2Assignment[] target)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
MAX
public static final int MAX
- See Also:
- Constant Field Values
NO_ASSIGNMENT
protected static final int NO_ASSIGNMENT
- See Also:
- Constant Field Values
UNDEF
public static final int UNDEF
- See Also:
- Constant Field Values
UNDEFINED_QUANTITY
protected static final int UNDEFINED_QUANTITY
- See Also:
- Constant Field Values
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
crossRefSerializer
@Inject
protected ICrossReferenceSerializer crossRefSerializer
enumLiteralSerializer
@Inject
protected IEnumLiteralSerializer enumLiteralSerializer
grammarAccess
@Inject
protected IGrammarAccess grammarAccess
grammarConstraintProvider
@Inject
protected IGrammarConstraintProvider grammarConstraintProvider
keywordSerializer
@Inject
protected IKeywordSerializer keywordSerializer
transientValueService
@Inject
protected ITransientValueService transientValueService
valueSerializer
@Inject
protected IValueSerializer valueSerializer
assignmentFinder
@Inject
protected IAssignmentFinder assignmentFinder
GenericSemanticSequencer
public GenericSemanticSequencer()
acceptAction
protected void acceptAction(Action action,
org.eclipse.emf.ecore.EObject semanticChild,
ICompositeNode node)
acceptEObjectRuleCall
protected void acceptEObjectRuleCall(RuleCall ruleCall,
org.eclipse.emf.ecore.EObject semanticChild,
ICompositeNode node)
acceptSemantic
protected boolean acceptSemantic(org.eclipse.emf.ecore.EObject semanticObj,
IGrammarConstraintProvider.IConstraintElement constr,
java.lang.Object value,
int index,
INode node)
containsUnavailableFeature
protected boolean containsUnavailableFeature(GenericSemanticSequencer.Feature2Assignment[] values,
IGrammarConstraintProvider.IConstraintElement element,
IGrammarConstraintProvider.IConstraintElement excludeAssignment)
createSequence
public void createSequence(org.eclipse.emf.ecore.EObject context,
org.eclipse.emf.ecore.EObject semanticObject)
createUnambiguousAllocation
protected java.util.List<? extends GenericSemanticSequencer.Allocation> createUnambiguousAllocation(IGrammarConstraintProvider.IConstraintElement constraint,
GenericSemanticSequencer.Feature2Assignment[] values)
createValues
protected GenericSemanticSequencer.Feature2Assignment[] createValues(org.eclipse.emf.ecore.EObject semanticObject,
IGrammarConstraintProvider.IConstraint constraint,
ISemanticNodeProvider.INodesForEObjectProvider nodes)
createValues
protected void createValues(org.eclipse.emf.ecore.EObject semanticObj,
IGrammarConstraintProvider.IFeatureInfo feature,
boolean optional,
GenericSemanticSequencer.AllocationValue value,
GenericSemanticSequencer.Feature2Assignment[] target)
createValues
protected void createValues(org.eclipse.emf.ecore.EObject semanticObj,
IGrammarConstraintProvider.IFeatureInfo feature,
java.util.List<GenericSemanticSequencer.AllocationValue> values,
GenericSemanticSequencer.Feature2Assignment[] target)
distributeValuesByQuantity
protected void distributeValuesByQuantity(java.util.List<IGrammarConstraintProvider.IConstraintElement> assignments,
java.util.List<GenericSemanticSequencer.AllocationValue> values,
GenericSemanticSequencer.Feature2Assignment[] target)
f2aToStr
protected java.lang.String f2aToStr(IGrammarConstraintProvider.IConstraintElement ele,
GenericSemanticSequencer.Feature2Assignment[] values)
f2aToStr
protected void f2aToStr(IGrammarConstraintProvider.IConstraintElement ele,
GenericSemanticSequencer.Feature2Assignment[] values,
java.lang.String prefix,
java.lang.StringBuilder result)
findValidAssignments
protected java.util.List<IGrammarConstraintProvider.IConstraintElement> findValidAssignments(org.eclipse.emf.ecore.EObject semanticObj,
IGrammarConstraintProvider.IConstraintElement[] assignments,
GenericSemanticSequencer.AllocationValue value)
findValidAssignments
protected java.util.List<IGrammarConstraintProvider.IConstraintElement> findValidAssignments(org.eclipse.emf.ecore.EObject semanticObj,
java.util.List<IGrammarConstraintProvider.IConstraintElement> assignments,
java.util.List<GenericSemanticSequencer.AllocationValue> values)
getConstraint
protected IGrammarConstraintProvider.IConstraint getConstraint(org.eclipse.emf.ecore.EObject context,
org.eclipse.emf.ecore.EClass type)
getNonTransientValuesForMVFeature
protected java.util.List<GenericSemanticSequencer.AllocationValue> getNonTransientValuesForMVFeature(org.eclipse.emf.ecore.EObject semanticObject,
IGrammarConstraintProvider.IFeatureInfo feature,
ISemanticNodeProvider.INodesForEObjectProvider nodes)
initConstraints
protected void initConstraints()
isAmbiguous
protected boolean isAmbiguous(GenericSemanticSequencer.Feature2Assignment[] allocations)
isExcludedByDependees
protected boolean isExcludedByDependees(IGrammarConstraintProvider.IConstraintElement assignments,
GenericSemanticSequencer.Feature2Assignment[] target)