org.eclipse.ocl.examples.xtext.essentialocl.serializer
Class AbstractEssentialOCLSemanticSequencer

java.lang.Object
  extended by org.eclipse.xtext.serializer.sequencer.AbstractSemanticSequencer
      extended by org.eclipse.xtext.serializer.sequencer.AbstractDelegatingSemanticSequencer
          extended by org.eclipse.ocl.examples.xtext.essentialocl.serializer.AbstractEssentialOCLSemanticSequencer
All Implemented Interfaces:
org.eclipse.xtext.serializer.sequencer.ISemanticSequencer
Direct Known Subclasses:
EssentialOCLSemanticSequencer

public abstract class AbstractEssentialOCLSemanticSequencer
extends org.eclipse.xtext.serializer.sequencer.AbstractDelegatingSemanticSequencer


Field Summary
 
Fields inherited from class org.eclipse.xtext.serializer.sequencer.AbstractDelegatingSemanticSequencer
genericSequencer, genericSequencerProvider
 
Fields inherited from class org.eclipse.xtext.serializer.sequencer.AbstractSemanticSequencer
diagnosticProvider, errorAcceptor, feederProvider, masterSequencer, nodeProvider, sequenceAcceptor, transientValues
 
Constructor Summary
AbstractEssentialOCLSemanticSequencer()
           
 
Method Summary
 void createSequence(org.eclipse.emf.ecore.EObject context, org.eclipse.emf.ecore.EObject semanticObject)
           
protected  void sequence_BooleanLiteralExpCS(org.eclipse.emf.ecore.EObject context, BooleanLiteralExpCS semanticObject)
          Constraint: (name='true' | name='false')
protected  void sequence_CollectionLiteralExpCS(org.eclipse.emf.ecore.EObject context, CollectionLiteralExpCS semanticObject)
          Constraint: (ownedType=CollectionTypeCS (ownedParts+=CollectionLiteralPartCS ownedParts+=CollectionLiteralPartCS*)?)
protected  void sequence_CollectionLiteralPartCS(org.eclipse.emf.ecore.EObject context, CollectionLiteralPartCS semanticObject)
          Constraint: (expressionCS=ExpCS lastExpressionCS=ExpCS?)
protected  void sequence_CollectionTypeCS(org.eclipse.emf.ecore.EObject context, CollectionTypeCS semanticObject)
          Constraint: (name=CollectionTypeIdentifier ownedType=TypeExpCS?)
protected  void sequence_ConstructorPartCS(org.eclipse.emf.ecore.EObject context, ConstructorPartCS semanticObject)
          Constraint: (property=[Property|UnrestrictedName] initExpression=ExpCS)
protected  void sequence_ExpCS(org.eclipse.emf.ecore.EObject context, InfixExpCS semanticObject)
          Constraint: ((ownedExpression+=PrefixedExpCS ownedOperator+=BinaryOperatorCS)+ ownedExpression+=PrefixedExpOrLetExpCS)
protected  void sequence_ExpCS(org.eclipse.emf.ecore.EObject context, PrefixExpCS semanticObject)
          Constraint: (ownedOperator+=UnaryOperatorCS+ ownedExpression=PrimaryExpOrLetExpCS)
protected  void sequence_ExpCS(org.eclipse.emf.ecore.EObject context, SelfExpCS semanticObject)
          Constraint: {SelfExpCS}
protected  void sequence_FirstPathElementCS(org.eclipse.emf.ecore.EObject context, PathElementCS semanticObject)
          Constraint: element=[NamedElement|UnrestrictedName]
protected  void sequence_IfExpCS(org.eclipse.emf.ecore.EObject context, IfExpCS semanticObject)
          Constraint: (condition=ExpCS thenExpression=ExpCS elseExpression=ExpCS)
protected  void sequence_InfixOperatorCS(org.eclipse.emf.ecore.EObject context, BinaryOperatorCS semanticObject)
          Constraint: name=InfixOperator
protected  void sequence_LetExpCS(org.eclipse.emf.ecore.EObject context, LetExpCS semanticObject)
          Constraint: (variable+=LetVariableCS variable+=LetVariableCS* in=ExpCS)
protected  void sequence_LetVariableCS(org.eclipse.emf.ecore.EObject context, LetVariableCS semanticObject)
          Constraint: (name=UnrestrictedName ownedType=TypeExpCS? initExpression=ExpCS)
protected  void sequence_Model(org.eclipse.emf.ecore.EObject context, ContextCS semanticObject)
          Constraint: ownedExpression=ExpCS
protected  void sequence_MultiplicityBoundsCS(org.eclipse.emf.ecore.EObject context, MultiplicityBoundsCS semanticObject)
          Constraint: (lowerBound=LOWER upperBound=UPPER?)
protected  void sequence_MultiplicityStringCS(org.eclipse.emf.ecore.EObject context, MultiplicityStringCS semanticObject)
          Constraint: (stringBounds='*' | stringBounds='+' | stringBounds='?')
protected  void sequence_NavigatingArgCS(org.eclipse.emf.ecore.EObject context, NavigatingArgCS semanticObject)
          Constraint: (name=NavigatingArgExpCS (ownedType=TypeExpCS init=ExpCS?)?)
protected  void sequence_NavigatingBarArgCS(org.eclipse.emf.ecore.EObject context, NavigatingArgCS semanticObject)
          Constraint: (prefix='|' name=NavigatingArgExpCS (ownedType=TypeExpCS init=ExpCS?)?)
protected  void sequence_NavigatingCommaArgCS(org.eclipse.emf.ecore.EObject context, NavigatingArgCS semanticObject)
          Constraint: (prefix=',' name=NavigatingArgExpCS (ownedType=TypeExpCS init=ExpCS?)?)
protected  void sequence_NavigatingSemiArgCS(org.eclipse.emf.ecore.EObject context, NavigatingArgCS semanticObject)
          Constraint: (prefix=';' name=NavigatingArgExpCS (ownedType=TypeExpCS init=ExpCS?)?)
protected  void sequence_NavigationOperatorCS(org.eclipse.emf.ecore.EObject context, NavigationOperatorCS semanticObject)
          Constraint: name=NavigationOperator
protected  void sequence_NestedExpCS(org.eclipse.emf.ecore.EObject context, NestedExpCS semanticObject)
          Constraint: source=ExpCS
protected  void sequence_NextPathElementCS(org.eclipse.emf.ecore.EObject context, PathElementCS semanticObject)
          Constraint: element=[NamedElement|UnreservedName]
protected  void sequence_NumberLiteralExpCS(org.eclipse.emf.ecore.EObject context, NumberLiteralExpCS semanticObject)
          Constraint: name=NUMBER_LITERAL
protected  void sequence_PathNameCS(org.eclipse.emf.ecore.EObject context, PathNameCS semanticObject)
          Constraint: (path+=FirstPathElementCS path+=NextPathElementCS*)
protected  void sequence_PrefixedExpCS(org.eclipse.emf.ecore.EObject context, PrefixExpCS semanticObject)
          Constraint: (ownedOperator+=UnaryOperatorCS+ ownedExpression=PrimaryExpCS)
protected  void sequence_PrefixedExpOrLetExpCS(org.eclipse.emf.ecore.EObject context, PrefixExpCS semanticObject)
          Constraint: (ownedOperator+=UnaryOperatorCS+ ownedExpression=PrimaryExpOrLetExpCS)
protected  void sequence_PrimaryExpCS(org.eclipse.emf.ecore.EObject context, ConstructorExpCS semanticObject)
          Constraint: (pathName=PathNameCS ((ownedParts+=ConstructorPartCS ownedParts+=ConstructorPartCS*) | value=StringLiteral))
protected  void sequence_PrimaryExpCS(org.eclipse.emf.ecore.EObject context, IndexExpCS semanticObject)
          Constraint: (pathName=PathNameCS firstIndexes+=ExpCS firstIndexes+=ExpCS* (secondIndexes+=ExpCS secondIndexes+=ExpCS*)? atPre?='@'?)
protected  void sequence_PrimaryExpCS(org.eclipse.emf.ecore.EObject context, InvocationExpCS semanticObject)
          Constraint: ( pathName=PathNameCS atPre?='@'? ( argument+=NavigatingArgCS argument+=NavigatingCommaArgCS* (argument+=NavigatingSemiArgCS argument+=NavigatingCommaArgCS*)? (argument+=NavigatingBarArgCS argument+=NavigatingCommaArgCS*)? )? )
protected  void sequence_PrimaryExpCS(org.eclipse.emf.ecore.EObject context, NameExpCS semanticObject)
          Constraint: (pathName=PathNameCS atPre?='@'?)
protected  void sequence_PrimitiveLiteralExpCS(org.eclipse.emf.ecore.EObject context, InvalidLiteralExpCS semanticObject)
          Constraint: {InvalidLiteralExpCS}
protected  void sequence_PrimitiveLiteralExpCS(org.eclipse.emf.ecore.EObject context, NullLiteralExpCS semanticObject)
          Constraint: {NullLiteralExpCS}
protected  void sequence_PrimitiveLiteralExpCS(org.eclipse.emf.ecore.EObject context, UnlimitedNaturalLiteralExpCS semanticObject)
          Constraint: {UnlimitedNaturalLiteralExpCS}
protected  void sequence_PrimitiveTypeCS(org.eclipse.emf.ecore.EObject context, PrimitiveTypeRefCS semanticObject)
          Constraint: name=PrimitiveTypeIdentifier
protected  void sequence_StringLiteralExpCS(org.eclipse.emf.ecore.EObject context, StringLiteralExpCS semanticObject)
          Constraint: name+=StringLiteral+
protected  void sequence_TupleLiteralExpCS(org.eclipse.emf.ecore.EObject context, TupleLiteralExpCS semanticObject)
          Constraint: (ownedParts+=TupleLiteralPartCS ownedParts+=TupleLiteralPartCS*)
protected  void sequence_TupleLiteralPartCS(org.eclipse.emf.ecore.EObject context, TupleLiteralPartCS semanticObject)
          Constraint: (name=UnrestrictedName ownedType=TypeExpCS? initExpression=ExpCS)
protected  void sequence_TuplePartCS(org.eclipse.emf.ecore.EObject context, TuplePartCS semanticObject)
          Constraint: (name=UnrestrictedName ownedType=TypeExpCS)
protected  void sequence_TupleTypeCS(org.eclipse.emf.ecore.EObject context, TupleTypeCS semanticObject)
          Constraint: (name='Tuple' (ownedParts+=TuplePartCS ownedParts+=TuplePartCS*)?)
protected  void sequence_TypeExpCS(org.eclipse.emf.ecore.EObject context, CollectionTypeCS semanticObject)
          Constraint: (name=CollectionTypeIdentifier ownedType=TypeExpCS? multiplicity=MultiplicityCS?)
protected  void sequence_TypeExpCS(org.eclipse.emf.ecore.EObject context, PrimitiveTypeRefCS semanticObject)
          Constraint: (name=PrimitiveTypeIdentifier multiplicity=MultiplicityCS?)
protected  void sequence_TypeExpCS(org.eclipse.emf.ecore.EObject context, TupleTypeCS semanticObject)
          Constraint: (name='Tuple' (ownedParts+=TuplePartCS ownedParts+=TuplePartCS*)? multiplicity=MultiplicityCS?)
protected  void sequence_TypeExpCS(org.eclipse.emf.ecore.EObject context, TypeNameExpCS semanticObject)
          Constraint: (pathName=PathNameCS multiplicity=MultiplicityCS?)
protected  void sequence_TypeLiteralExpCS(org.eclipse.emf.ecore.EObject context, TypeLiteralExpCS semanticObject)
          Constraint: ownedType=TypeLiteralCS
protected  void sequence_TypeNameExpCS(org.eclipse.emf.ecore.EObject context, TypeNameExpCS semanticObject)
          Constraint: pathName=PathNameCS
protected  void sequence_UnaryOperatorCS(org.eclipse.emf.ecore.EObject context, UnaryOperatorCS semanticObject)
          Constraint: name=PrefixOperator
 
Methods inherited from class org.eclipse.xtext.serializer.sequencer.AbstractDelegatingSemanticSequencer
init
 
Methods inherited from class org.eclipse.xtext.serializer.sequencer.AbstractSemanticSequencer
createNodeProvider, createSequencerFeeder, createSequencerFeeder, init, setMasterSequencer
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractEssentialOCLSemanticSequencer

public AbstractEssentialOCLSemanticSequencer()
Method Detail

createSequence

public void createSequence(org.eclipse.emf.ecore.EObject context,
                           org.eclipse.emf.ecore.EObject semanticObject)

sequence_BooleanLiteralExpCS

protected void sequence_BooleanLiteralExpCS(org.eclipse.emf.ecore.EObject context,
                                            BooleanLiteralExpCS semanticObject)
Constraint: (name='true' | name='false')


sequence_CollectionLiteralExpCS

protected void sequence_CollectionLiteralExpCS(org.eclipse.emf.ecore.EObject context,
                                               CollectionLiteralExpCS semanticObject)
Constraint: (ownedType=CollectionTypeCS (ownedParts+=CollectionLiteralPartCS ownedParts+=CollectionLiteralPartCS*)?)


sequence_CollectionLiteralPartCS

protected void sequence_CollectionLiteralPartCS(org.eclipse.emf.ecore.EObject context,
                                                CollectionLiteralPartCS semanticObject)
Constraint: (expressionCS=ExpCS lastExpressionCS=ExpCS?)


sequence_CollectionTypeCS

protected void sequence_CollectionTypeCS(org.eclipse.emf.ecore.EObject context,
                                         CollectionTypeCS semanticObject)
Constraint: (name=CollectionTypeIdentifier ownedType=TypeExpCS?)


sequence_ConstructorPartCS

protected void sequence_ConstructorPartCS(org.eclipse.emf.ecore.EObject context,
                                          ConstructorPartCS semanticObject)
Constraint: (property=[Property|UnrestrictedName] initExpression=ExpCS)


sequence_ExpCS

protected void sequence_ExpCS(org.eclipse.emf.ecore.EObject context,
                              InfixExpCS semanticObject)
Constraint: ((ownedExpression+=PrefixedExpCS ownedOperator+=BinaryOperatorCS)+ ownedExpression+=PrefixedExpOrLetExpCS)


sequence_ExpCS

protected void sequence_ExpCS(org.eclipse.emf.ecore.EObject context,
                              PrefixExpCS semanticObject)
Constraint: (ownedOperator+=UnaryOperatorCS+ ownedExpression=PrimaryExpOrLetExpCS)


sequence_ExpCS

protected void sequence_ExpCS(org.eclipse.emf.ecore.EObject context,
                              SelfExpCS semanticObject)
Constraint: {SelfExpCS}


sequence_FirstPathElementCS

protected void sequence_FirstPathElementCS(org.eclipse.emf.ecore.EObject context,
                                           PathElementCS semanticObject)
Constraint: element=[NamedElement|UnrestrictedName]


sequence_IfExpCS

protected void sequence_IfExpCS(org.eclipse.emf.ecore.EObject context,
                                IfExpCS semanticObject)
Constraint: (condition=ExpCS thenExpression=ExpCS elseExpression=ExpCS)


sequence_InfixOperatorCS

protected void sequence_InfixOperatorCS(org.eclipse.emf.ecore.EObject context,
                                        BinaryOperatorCS semanticObject)
Constraint: name=InfixOperator


sequence_LetExpCS

protected void sequence_LetExpCS(org.eclipse.emf.ecore.EObject context,
                                 LetExpCS semanticObject)
Constraint: (variable+=LetVariableCS variable+=LetVariableCS* in=ExpCS)


sequence_LetVariableCS

protected void sequence_LetVariableCS(org.eclipse.emf.ecore.EObject context,
                                      LetVariableCS semanticObject)
Constraint: (name=UnrestrictedName ownedType=TypeExpCS? initExpression=ExpCS)


sequence_Model

protected void sequence_Model(org.eclipse.emf.ecore.EObject context,
                              ContextCS semanticObject)
Constraint: ownedExpression=ExpCS


sequence_MultiplicityBoundsCS

protected void sequence_MultiplicityBoundsCS(org.eclipse.emf.ecore.EObject context,
                                             MultiplicityBoundsCS semanticObject)
Constraint: (lowerBound=LOWER upperBound=UPPER?)


sequence_MultiplicityStringCS

protected void sequence_MultiplicityStringCS(org.eclipse.emf.ecore.EObject context,
                                             MultiplicityStringCS semanticObject)
Constraint: (stringBounds='*' | stringBounds='+' | stringBounds='?')


sequence_NavigatingArgCS

protected void sequence_NavigatingArgCS(org.eclipse.emf.ecore.EObject context,
                                        NavigatingArgCS semanticObject)
Constraint: (name=NavigatingArgExpCS (ownedType=TypeExpCS init=ExpCS?)?)


sequence_NavigatingBarArgCS

protected void sequence_NavigatingBarArgCS(org.eclipse.emf.ecore.EObject context,
                                           NavigatingArgCS semanticObject)
Constraint: (prefix='|' name=NavigatingArgExpCS (ownedType=TypeExpCS init=ExpCS?)?)


sequence_NavigatingCommaArgCS

protected void sequence_NavigatingCommaArgCS(org.eclipse.emf.ecore.EObject context,
                                             NavigatingArgCS semanticObject)
Constraint: (prefix=',' name=NavigatingArgExpCS (ownedType=TypeExpCS init=ExpCS?)?)


sequence_NavigatingSemiArgCS

protected void sequence_NavigatingSemiArgCS(org.eclipse.emf.ecore.EObject context,
                                            NavigatingArgCS semanticObject)
Constraint: (prefix=';' name=NavigatingArgExpCS (ownedType=TypeExpCS init=ExpCS?)?)


sequence_NavigationOperatorCS

protected void sequence_NavigationOperatorCS(org.eclipse.emf.ecore.EObject context,
                                             NavigationOperatorCS semanticObject)
Constraint: name=NavigationOperator


sequence_NestedExpCS

protected void sequence_NestedExpCS(org.eclipse.emf.ecore.EObject context,
                                    NestedExpCS semanticObject)
Constraint: source=ExpCS


sequence_NextPathElementCS

protected void sequence_NextPathElementCS(org.eclipse.emf.ecore.EObject context,
                                          PathElementCS semanticObject)
Constraint: element=[NamedElement|UnreservedName]


sequence_NumberLiteralExpCS

protected void sequence_NumberLiteralExpCS(org.eclipse.emf.ecore.EObject context,
                                           NumberLiteralExpCS semanticObject)
Constraint: name=NUMBER_LITERAL


sequence_PathNameCS

protected void sequence_PathNameCS(org.eclipse.emf.ecore.EObject context,
                                   PathNameCS semanticObject)
Constraint: (path+=FirstPathElementCS path+=NextPathElementCS*)


sequence_PrefixedExpCS

protected void sequence_PrefixedExpCS(org.eclipse.emf.ecore.EObject context,
                                      PrefixExpCS semanticObject)
Constraint: (ownedOperator+=UnaryOperatorCS+ ownedExpression=PrimaryExpCS)


sequence_PrefixedExpOrLetExpCS

protected void sequence_PrefixedExpOrLetExpCS(org.eclipse.emf.ecore.EObject context,
                                              PrefixExpCS semanticObject)
Constraint: (ownedOperator+=UnaryOperatorCS+ ownedExpression=PrimaryExpOrLetExpCS)


sequence_PrimaryExpCS

protected void sequence_PrimaryExpCS(org.eclipse.emf.ecore.EObject context,
                                     ConstructorExpCS semanticObject)
Constraint: (pathName=PathNameCS ((ownedParts+=ConstructorPartCS ownedParts+=ConstructorPartCS*) | value=StringLiteral))


sequence_PrimaryExpCS

protected void sequence_PrimaryExpCS(org.eclipse.emf.ecore.EObject context,
                                     IndexExpCS semanticObject)
Constraint: (pathName=PathNameCS firstIndexes+=ExpCS firstIndexes+=ExpCS* (secondIndexes+=ExpCS secondIndexes+=ExpCS*)? atPre?='@'?)


sequence_PrimaryExpCS

protected void sequence_PrimaryExpCS(org.eclipse.emf.ecore.EObject context,
                                     InvocationExpCS semanticObject)
Constraint: ( pathName=PathNameCS atPre?='@'? ( argument+=NavigatingArgCS argument+=NavigatingCommaArgCS* (argument+=NavigatingSemiArgCS argument+=NavigatingCommaArgCS*)? (argument+=NavigatingBarArgCS argument+=NavigatingCommaArgCS*)? )? )


sequence_PrimaryExpCS

protected void sequence_PrimaryExpCS(org.eclipse.emf.ecore.EObject context,
                                     NameExpCS semanticObject)
Constraint: (pathName=PathNameCS atPre?='@'?)


sequence_PrimitiveLiteralExpCS

protected void sequence_PrimitiveLiteralExpCS(org.eclipse.emf.ecore.EObject context,
                                              InvalidLiteralExpCS semanticObject)
Constraint: {InvalidLiteralExpCS}


sequence_PrimitiveLiteralExpCS

protected void sequence_PrimitiveLiteralExpCS(org.eclipse.emf.ecore.EObject context,
                                              NullLiteralExpCS semanticObject)
Constraint: {NullLiteralExpCS}


sequence_PrimitiveLiteralExpCS

protected void sequence_PrimitiveLiteralExpCS(org.eclipse.emf.ecore.EObject context,
                                              UnlimitedNaturalLiteralExpCS semanticObject)
Constraint: {UnlimitedNaturalLiteralExpCS}


sequence_PrimitiveTypeCS

protected void sequence_PrimitiveTypeCS(org.eclipse.emf.ecore.EObject context,
                                        PrimitiveTypeRefCS semanticObject)
Constraint: name=PrimitiveTypeIdentifier


sequence_StringLiteralExpCS

protected void sequence_StringLiteralExpCS(org.eclipse.emf.ecore.EObject context,
                                           StringLiteralExpCS semanticObject)
Constraint: name+=StringLiteral+


sequence_TupleLiteralExpCS

protected void sequence_TupleLiteralExpCS(org.eclipse.emf.ecore.EObject context,
                                          TupleLiteralExpCS semanticObject)
Constraint: (ownedParts+=TupleLiteralPartCS ownedParts+=TupleLiteralPartCS*)


sequence_TupleLiteralPartCS

protected void sequence_TupleLiteralPartCS(org.eclipse.emf.ecore.EObject context,
                                           TupleLiteralPartCS semanticObject)
Constraint: (name=UnrestrictedName ownedType=TypeExpCS? initExpression=ExpCS)


sequence_TuplePartCS

protected void sequence_TuplePartCS(org.eclipse.emf.ecore.EObject context,
                                    TuplePartCS semanticObject)
Constraint: (name=UnrestrictedName ownedType=TypeExpCS)


sequence_TupleTypeCS

protected void sequence_TupleTypeCS(org.eclipse.emf.ecore.EObject context,
                                    TupleTypeCS semanticObject)
Constraint: (name='Tuple' (ownedParts+=TuplePartCS ownedParts+=TuplePartCS*)?)


sequence_TypeExpCS

protected void sequence_TypeExpCS(org.eclipse.emf.ecore.EObject context,
                                  CollectionTypeCS semanticObject)
Constraint: (name=CollectionTypeIdentifier ownedType=TypeExpCS? multiplicity=MultiplicityCS?)


sequence_TypeExpCS

protected void sequence_TypeExpCS(org.eclipse.emf.ecore.EObject context,
                                  PrimitiveTypeRefCS semanticObject)
Constraint: (name=PrimitiveTypeIdentifier multiplicity=MultiplicityCS?)


sequence_TypeExpCS

protected void sequence_TypeExpCS(org.eclipse.emf.ecore.EObject context,
                                  TupleTypeCS semanticObject)
Constraint: (name='Tuple' (ownedParts+=TuplePartCS ownedParts+=TuplePartCS*)? multiplicity=MultiplicityCS?)


sequence_TypeExpCS

protected void sequence_TypeExpCS(org.eclipse.emf.ecore.EObject context,
                                  TypeNameExpCS semanticObject)
Constraint: (pathName=PathNameCS multiplicity=MultiplicityCS?)


sequence_TypeLiteralExpCS

protected void sequence_TypeLiteralExpCS(org.eclipse.emf.ecore.EObject context,
                                         TypeLiteralExpCS semanticObject)
Constraint: ownedType=TypeLiteralCS


sequence_TypeNameExpCS

protected void sequence_TypeNameExpCS(org.eclipse.emf.ecore.EObject context,
                                      TypeNameExpCS semanticObject)
Constraint: pathName=PathNameCS


sequence_UnaryOperatorCS

protected void sequence_UnaryOperatorCS(org.eclipse.emf.ecore.EObject context,
                                        UnaryOperatorCS semanticObject)
Constraint: name=PrefixOperator