Package de.monticore.types3.util
Class SymTypeDeepCloneVisitor
- java.lang.Object
-
- de.monticore.types3.util.SymTypeDeepCloneVisitor
-
- All Implemented Interfaces:
ISymTypeVisitor
- Direct Known Subclasses:
SymTypeBoxingVisitor,SymTypeFreeVariableReplaceVisitor,SymTypeInferenceVariableReplaceVisitor,SymTypeNormalizeVisitor,SymTypeUnboxingVisitor,SymTypeVariableReplaceVisitor
public class SymTypeDeepCloneVisitor extends java.lang.Object implements ISymTypeVisitor
clones SymTypeExpressions its main usage is to be derived from, to generate SymTypeExpressions, which are "not quite" clones, e.g., boxing of SymTypes Usage: calculate(mySymType)
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.Stack<SymTypeExpression>transformedSymTypes
-
Constructor Summary
Constructors Constructor Description SymTypeDeepCloneVisitor()
-
Method Summary
-
-
-
Field Detail
-
transformedSymTypes
protected java.util.Stack<SymTypeExpression> transformedSymTypes
-
-
Method Detail
-
getTransformedSymTypes
protected java.util.Stack<SymTypeExpression> getTransformedSymTypes()
-
reset
public void reset()
-
getTransformedSymType
public SymTypeExpression getTransformedSymType()
returns the transformed SymTypeExpression
-
popTransformedSubSymType
protected SymTypeExpression popTransformedSubSymType()
-
pushTransformedSymType
protected void pushTransformedSymType(SymTypeExpression type)
-
visit
public void visit(SymTypeArray symType)
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
public void visit(SymTypeInferenceVariable symType)
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
public void visit(SymTypeObscure symType)
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
public void visit(SymTypeOfFunction symType)
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
public void visit(SymTypeOfGenerics symType)
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
public void visit(SymTypeOfIntersection symType)
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
public void visit(SymTypeOfNull symType)
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
public void visit(SymTypeOfObject symType)
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
public void visit(SymTypeOfRegEx symType)
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
public void visit(SymTypeOfTuple symType)
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
public void visit(SymTypeOfUnion symType)
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
public void visit(SymTypePrimitive symType)
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
public void visit(SymTypeOfSIUnit siUnit)
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
public void visit(SymTypeOfNumericWithSIUnit numericWithSIUnit)
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
public void visit(SymTypeVariable symType)
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
public void visit(SymTypeVoid symType)
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
public void visit(SymTypeOfWildcard symType)
- Specified by:
visitin interfaceISymTypeVisitor
-
calculate
public SymTypeExpression calculate(SymTypeExpression symType)
uses this visitor with the provided symType and returns the result. it is reset during the process.
-
applyToCollection
protected java.util.List<SymTypeExpression> applyToCollection(java.util.List<SymTypeExpression> symTypes)
-
applyToCollection
protected java.util.Set<SymTypeExpression> applyToCollection(java.util.Set<SymTypeExpression> symTypes)
-
-