public class ToStringVisitor<C,O,P,EL,PM,S,COA,SSA,CT> extends AbstractVisitor<java.lang.String,C,O,P,EL,PM,S,COA,SSA,CT>
| Modifier and Type | Field and Description |
|---|---|
protected static java.lang.String |
NULL_PLACEHOLDER
Indicates where a required element in the AST was
null, so
that it is evident in the debugger that something was missing. |
result| Modifier | Constructor and Description |
|---|---|
protected |
ToStringVisitor(Environment<?,C,O,P,EL,PM,S,COA,SSA,CT,?,?> env)
Initializes me with my environment.
|
| Modifier and Type | Method and Description |
|---|---|
protected java.util.List<? extends org.eclipse.emf.ecore.EObject> |
getConstrainedElements(CT constraint) |
static <C,O,P,EL,PM,S,COA,SSA,CT> |
getInstance(Environment<?,C,O,P,EL,PM,S,COA,SSA,CT,?,?> env)
Obtains an instance of the toString() visitor for the specified
environment.
|
static <C,O,P,EL,PM,S,COA,SSA,CT> |
getInstance(TypedElement<C> element)
Obtains an instance of the toString() visitor for the specified
expression or other typed element.
|
protected java.lang.String |
getName(java.lang.Object named)
Null-safe access to the name of a named element.
|
protected O |
getOperation(COA callOperationAction) |
protected java.util.List<PM> |
getParameters(O operation) |
protected java.lang.String |
getQualifiedName(java.lang.Object named)
Null-safe access to the qualified name of a named element.
|
protected C |
getSignal(SSA sendSignalAction) |
protected ExpressionInOCL<C,PM> |
getSpecification(CT constraint)
Overridden by subclasses interested in visiting constraints, to get the
constraint's specification.
|
protected java.lang.String |
getStereotype(CT constraint) |
protected C |
getType(java.lang.Object typedElement) |
protected java.lang.String |
handleAssociationClassCallExp(AssociationClassCallExp<C,P> ac,
java.lang.String sourceResult,
java.util.List<java.lang.String> qualifierResults)
Callback for an AssociationClassCallExp visit.
|
protected java.lang.String |
handleCollectionItem(CollectionItem<C> item,
java.lang.String itemResult)
Visits the specified collection item with the result of visiting
its item expression.
|
protected java.lang.String |
handleCollectionLiteralExp(CollectionLiteralExp<C> cl,
java.util.List<java.lang.String> partResults)
Callback for a CollectionLiteralExp visit.
|
protected java.lang.String |
handleCollectionRange(CollectionRange<C> range,
java.lang.String firstResult,
java.lang.String lastResult)
Visits the specified collection range with the results of visiting
its first and last expressions.
|
protected java.lang.String |
handleIfExp(IfExp<C> ifExp,
java.lang.String conditionResult,
java.lang.String thenResult,
java.lang.String elseResult)
Callback for an IfExp visit.
|
protected java.lang.String |
handleIterateExp(IterateExp<C,PM> callExp,
java.lang.String sourceResult,
java.util.List<java.lang.String> variableResults,
java.lang.String resultResult,
java.lang.String bodyResult)
Callback for an IterateExp visit.
|
protected java.lang.String |
handleIteratorExp(IteratorExp<C,PM> callExp,
java.lang.String sourceResult,
java.util.List<java.lang.String> variableResults,
java.lang.String bodyResult)
Callback for an IteratorExp visit.
|
protected java.lang.String |
handleLetExp(LetExp<C,PM> letExp,
java.lang.String variableResult,
java.lang.String inResult)
Callback for LetExp visit.
|
protected java.lang.String |
handleMessageExp(MessageExp<C,COA,SSA> messageExp,
java.lang.String targetResult,
java.util.List<java.lang.String> argumentResults)
Visits the specified message expression with the results of visiting
its target and arguments (if any).
|
protected java.lang.String |
handleOperationCallExp(OperationCallExp<C,O> oc,
java.lang.String sourceResult,
java.util.List<java.lang.String> argumentResults)
Callback for an OperationCallExp visit.
|
protected java.lang.String |
handlePropertyCallExp(PropertyCallExp<C,P> pc,
java.lang.String sourceResult,
java.util.List<java.lang.String> qualifierResults)
Callback for an AssociationEndCallExp visit.
|
protected java.lang.String |
handleTupleLiteralExp(TupleLiteralExp<C,P> literalExp,
java.util.List<java.lang.String> partResults)
Callback for a TupleLiteralExp visit.
|
protected java.lang.String |
handleTupleLiteralPart(TupleLiteralPart<C,P> part,
java.lang.String valueResult)
Visits the specified tuple literal part with the results of visiting
its value (if any).
|
protected java.lang.String |
handleVariable(Variable<C,PM> vd,
java.lang.String initResult)
Callback for the Variable visit.
|
protected java.lang.String |
initialLower(java.lang.String name) |
protected boolean |
isClassifier(java.lang.Object element) |
protected boolean |
isOperation(java.lang.Object element) |
protected boolean |
isProperty(java.lang.Object element) |
protected java.lang.String |
maybeAtPre(FeatureCallExp<C> mpc,
java.lang.String base) |
java.lang.String |
visitBooleanLiteralExp(BooleanLiteralExp<C> bl)
Callback for a BooleanLiteralExp visit.
|
java.lang.String |
visitConstraint(CT constraint)
Renders a constraint with its context and expression.
|
java.lang.String |
visitEnumLiteralExp(EnumLiteralExp<C,EL> el)
Callback for an EnumLiteralExp visit.
|
java.lang.String |
visitExpressionInOCL(ExpressionInOCL<C,PM> expression)
Renders an ExpressionInOcl with its context variables and body.
|
java.lang.String |
visitIntegerLiteralExp(IntegerLiteralExp<C> il)
Callback for an IntegerLiteralExp visit.
|
java.lang.String |
visitInvalidLiteralExp(InvalidLiteralExp<C> il)
Simply returns
AbstractVisitor.result. |
java.lang.String |
visitNullLiteralExp(NullLiteralExp<C> il)
Simply returns
AbstractVisitor.result. |
java.lang.String |
visitRealLiteralExp(RealLiteralExp<C> rl)
Callback for a RealLiteralExp visit.
|
java.lang.String |
visitStateExp(StateExp<C,S> s)
Simply returns
AbstractVisitor.result. |
java.lang.String |
visitStringLiteralExp(StringLiteralExp<C> sl)
Callback for a StringLiteralExp visit.
|
java.lang.String |
visitTypeExp(TypeExp<C> t)
Simply returns
AbstractVisitor.result. |
java.lang.String |
visitUnlimitedNaturalLiteralExp(UnlimitedNaturalLiteralExp<C> unl)
Callback for an UnlimitedNaturalLiteralExp visit.
|
java.lang.String |
visitUnspecifiedValueExp(UnspecifiedValueExp<C> uv)
Callback for an UnspecifiedValueExp visit.
|
java.lang.String |
visitVariableExp(VariableExp<C,PM> v)
Callback for a VariableExp visit.
|
handleConstraint, handleExpressionInOCL, safeVisit, visitAssociationClassCallExp, visitCollectionItem, visitCollectionLiteralExp, visitCollectionRange, visitIfExp, visitIterateExp, visitIteratorExp, visitLetExp, visitMessageExp, visitOperationCallExp, visitPropertyCallExp, visitTupleLiteralExp, visitTupleLiteralPart, visitVariableprotected static java.lang.String NULL_PLACEHOLDER
null, so
that it is evident in the debugger that something was missing. We don't
want just "null" because that would look like the OclVoid
literal.public static <C,O,P,EL,PM,S,COA,SSA,CT> ToStringVisitor<C,O,P,EL,PM,S,COA,SSA,CT> getInstance(Environment<?,C,O,P,EL,PM,S,COA,SSA,CT,?,?> env)
env - an OCL environmentpublic static <C,O,P,EL,PM,S,COA,SSA,CT> ToStringVisitor<C,O,P,EL,PM,S,COA,SSA,CT> getInstance(TypedElement<C> element)
element - an OCL expression or other typed element such as a variableprotected java.lang.String getName(java.lang.Object named)
named - a named element or nullnull. i.e., null is never returnedprotected java.lang.String getQualifiedName(java.lang.Object named)
named - a named element or nullnull. i.e., null is never
returnedprotected java.lang.String handleOperationCallExp(OperationCallExp<C,O> oc, java.lang.String sourceResult, java.util.List<java.lang.String> argumentResults)
handleOperationCallExp in class AbstractVisitor<java.lang.String,C,O,P,EL,PM,S,COA,SSA,CT>oc - the operation call expressionsourceResult - the result of visiting the expression's sourceargumentResults - the results of visiting the expression's
arguments, or an empty list if there are no argumentsAbstractVisitor.visitOperationCallExp(OperationCallExp)public java.lang.String visitEnumLiteralExp(EnumLiteralExp<C,EL> el)
public java.lang.String visitVariableExp(VariableExp<C,PM> v)
protected java.lang.String handlePropertyCallExp(PropertyCallExp<C,P> pc, java.lang.String sourceResult, java.util.List<java.lang.String> qualifierResults)
handlePropertyCallExp in class AbstractVisitor<java.lang.String,C,O,P,EL,PM,S,COA,SSA,CT>pc - the property call expressionsourceResult - the result of visiting the expression's sourcequalifierResults - the results of visiting the expression's
qualifiers, or an empty list if there are no qualifiersAbstractVisitor.visitPropertyCallExp(PropertyCallExp)protected java.lang.String handleAssociationClassCallExp(AssociationClassCallExp<C,P> ac, java.lang.String sourceResult, java.util.List<java.lang.String> qualifierResults)
handleAssociationClassCallExp in class AbstractVisitor<java.lang.String,C,O,P,EL,PM,S,COA,SSA,CT>ac - the association class expressionsourceResult - the result of visiting the expression's sourcequalifierResults - the results of visiting the expression's
qualifiers, or an empty list if there are no qualifiersAbstractVisitor.visitAssociationClassCallExp(AssociationClassCallExp)protected java.lang.String initialLower(java.lang.String name)
protected java.lang.String handleVariable(Variable<C,PM> vd, java.lang.String initResult)
handleVariable in class AbstractVisitor<java.lang.String,C,O,P,EL,PM,S,COA,SSA,CT>vd - the variable declarationinitResult - the result of visiting the expression's initializer,
or null if it has noneAbstractVisitor.visitVariable(Variable)protected java.lang.String handleIfExp(IfExp<C> ifExp, java.lang.String conditionResult, java.lang.String thenResult, java.lang.String elseResult)
handleIfExp in class AbstractVisitor<java.lang.String,C,O,P,EL,PM,S,COA,SSA,CT>ifExp - an IfExpconditionResult - the result of visiting the expression's conditionthenResult - the result of visiting the expression's thenelseResult - the result of visiting the expression's elseAbstractVisitor.visitIfExp(IfExp)public java.lang.String visitTypeExp(TypeExp<C> t)
AbstractVisitorAbstractVisitor.result.public java.lang.String visitStateExp(StateExp<C,S> s)
AbstractVisitorAbstractVisitor.result.public java.lang.String visitUnspecifiedValueExp(UnspecifiedValueExp<C> uv)
public java.lang.String visitIntegerLiteralExp(IntegerLiteralExp<C> il)
public java.lang.String visitUnlimitedNaturalLiteralExp(UnlimitedNaturalLiteralExp<C> unl)
public java.lang.String visitRealLiteralExp(RealLiteralExp<C> rl)
visitRealLiteralExp in interface Visitor<java.lang.String,C,O,P,EL,PM,S,COA,SSA,CT>visitRealLiteralExp in class AbstractVisitor<java.lang.String,C,O,P,EL,PM,S,COA,SSA,CT>rl - -- real literal expressionpublic java.lang.String visitStringLiteralExp(StringLiteralExp<C> sl)
visitStringLiteralExp in interface Visitor<java.lang.String,C,O,P,EL,PM,S,COA,SSA,CT>visitStringLiteralExp in class AbstractVisitor<java.lang.String,C,O,P,EL,PM,S,COA,SSA,CT>sl - -- string literal expressionpublic java.lang.String visitBooleanLiteralExp(BooleanLiteralExp<C> bl)
visitBooleanLiteralExp in interface Visitor<java.lang.String,C,O,P,EL,PM,S,COA,SSA,CT>visitBooleanLiteralExp in class AbstractVisitor<java.lang.String,C,O,P,EL,PM,S,COA,SSA,CT>bl - -- boolean literal expressionprotected java.lang.String handleLetExp(LetExp<C,PM> letExp, java.lang.String variableResult, java.lang.String inResult)
handleLetExp in class AbstractVisitor<java.lang.String,C,O,P,EL,PM,S,COA,SSA,CT>letExp - a let expressionvariableResult - the result of visiting the expression's variableinResult - the result of visiting the expression's in expressionAbstractVisitor.visitLetExp(LetExp)protected java.lang.String handleIterateExp(IterateExp<C,PM> callExp, java.lang.String sourceResult, java.util.List<java.lang.String> variableResults, java.lang.String resultResult, java.lang.String bodyResult)
handleIterateExp in class AbstractVisitor<java.lang.String,C,O,P,EL,PM,S,COA,SSA,CT>callExp - an iterate expressionsourceResult - the result of visiting the expression's sourcevariableResults - the results of visiting the expression's
iterator variablesresultResult - the result of visiting the expressions' result variablebodyResult - the result of visiting the expression's bodyAbstractVisitor.visitIterateExp(IterateExp)protected java.lang.String handleIteratorExp(IteratorExp<C,PM> callExp, java.lang.String sourceResult, java.util.List<java.lang.String> variableResults, java.lang.String bodyResult)
handleIteratorExp in class AbstractVisitor<java.lang.String,C,O,P,EL,PM,S,COA,SSA,CT>callExp - an iterator expressionsourceResult - the result of visiting the expression's sourcevariableResults - the results of visiting the expression's
iterator variablesbodyResult - the result of visiting the expression's bodyAbstractVisitor.visitIteratorExp(IteratorExp)protected java.lang.String handleCollectionLiteralExp(CollectionLiteralExp<C> cl, java.util.List<java.lang.String> partResults)
handleCollectionLiteralExp in class AbstractVisitor<java.lang.String,C,O,P,EL,PM,S,COA,SSA,CT>cl - collection literal expressionpartResults - the results of visiting the expression's
parts, or an empty list if there are no partsAbstractVisitor.visitCollectionLiteralExp(CollectionLiteralExp)protected java.lang.String handleCollectionItem(CollectionItem<C> item, java.lang.String itemResult)
AbstractVisitorhandleCollectionItem in class AbstractVisitor<java.lang.String,C,O,P,EL,PM,S,COA,SSA,CT>item - the collection itemitemResult - the result of visiting the item's item expressionAbstractVisitor.result, by defaultAbstractVisitor.visitCollectionItem(CollectionItem)protected java.lang.String handleCollectionRange(CollectionRange<C> range, java.lang.String firstResult, java.lang.String lastResult)
AbstractVisitorhandleCollectionRange in class AbstractVisitor<java.lang.String,C,O,P,EL,PM,S,COA,SSA,CT>range - the collection rangefirstResult - the result of visiting the range's first expressionlastResult - the result of visiting the range's last expressionAbstractVisitor.result, by defaultAbstractVisitor.visitCollectionRange(CollectionRange)protected java.lang.String handleTupleLiteralExp(TupleLiteralExp<C,P> literalExp, java.util.List<java.lang.String> partResults)
handleTupleLiteralExp in class AbstractVisitor<java.lang.String,C,O,P,EL,PM,S,COA,SSA,CT>literalExp - tuple literal expressionpartResults - the results of visiting the expression's
parts, or an empty list if there are no partsAbstractVisitor.visitTupleLiteralExp(TupleLiteralExp)protected java.lang.String handleTupleLiteralPart(TupleLiteralPart<C,P> part, java.lang.String valueResult)
AbstractVisitorhandleTupleLiteralPart in class AbstractVisitor<java.lang.String,C,O,P,EL,PM,S,COA,SSA,CT>part - the tuple literal partvalueResult - the result of visiting the expression's value, or
null if it has no valueAbstractVisitor.result, by defaultAbstractVisitor.visitTupleLiteralPart(TupleLiteralPart)protected java.lang.String handleMessageExp(MessageExp<C,COA,SSA> messageExp, java.lang.String targetResult, java.util.List<java.lang.String> argumentResults)
AbstractVisitorhandleMessageExp in class AbstractVisitor<java.lang.String,C,O,P,EL,PM,S,COA,SSA,CT>messageExp - the message expressiontargetResult - the result of visiting the expression's targetargumentResults - the results of visiting the expression's
arguments, or an empty list if there are no argumentsAbstractVisitor.result, by defaultAbstractVisitor.visitMessageExp(MessageExp)public java.lang.String visitExpressionInOCL(ExpressionInOCL<C,PM> expression)
public java.lang.String visitConstraint(CT constraint)
protected boolean isClassifier(java.lang.Object element)
protected boolean isOperation(java.lang.Object element)
protected boolean isProperty(java.lang.Object element)
protected java.util.List<? extends org.eclipse.emf.ecore.EObject> getConstrainedElements(CT constraint)
protected java.lang.String getStereotype(CT constraint)
protected ExpressionInOCL<C,PM> getSpecification(CT constraint)
AbstractVisitorgetSpecification in class AbstractVisitor<java.lang.String,C,O,P,EL,PM,S,COA,SSA,CT>constraint - a constraintAbstractVisitor.visitConstraint(Object)protected C getType(java.lang.Object typedElement)
protected java.lang.String maybeAtPre(FeatureCallExp<C> mpc, java.lang.String base)
public java.lang.String visitInvalidLiteralExp(InvalidLiteralExp<C> il)
AbstractVisitorAbstractVisitor.result.public java.lang.String visitNullLiteralExp(NullLiteralExp<C> il)
AbstractVisitorAbstractVisitor.result.