Package de.monticore.types3.util
Class SymTypeCollectionVisitor
java.lang.Object
de.monticore.types3.util.SymTypeCollectionVisitor
- All Implemented Interfaces:
ISymTypeVisitor
Collects contained SymTypeExpressions based on a predicate, e.g.,
type:
(List<A>, Set<List<C>>) -> void
predicate: isList
result: List<A>, List<C>
Usage:
calculate(mySymType, predicate)-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected booleanprotected Predicate<SymTypeExpression> protected List<SymTypeExpression> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidaddType(SymTypeExpression type) calculate(SymTypeExpression symType, Predicate<SymTypeExpression> filter) calculate(SymTypeExpression symType, Predicate<SymTypeExpression> filter, boolean allowDuplicates) uses this visitor with the provided symType and returns the result.protected List<SymTypeExpression> voidreset()voidvisit(SymTypeArray symType) voidvisit(SymTypeInferenceVariable infVar) voidvisit(SymTypeObscure obscure) voidvisit(SymTypeOfFunction symType) voidvisit(SymTypeOfGenerics symType) voidvisit(SymTypeOfIntersection symType) voidvisit(SymTypeOfNull nullSymType) voidvisit(SymTypeOfNumericWithSIUnit numericWithSIUnit) voidvisit(SymTypeOfObject object) voidvisit(SymTypeOfRegEx regex) voidvisit(SymTypeOfSIUnit siUnit) voidvisit(SymTypeOfTuple symType) voidvisit(SymTypeOfUnion symType) voidvisit(SymTypeOfWildcard symType) voidvisit(SymTypePrimitive primitive) voidvisit(SymTypeVariable typeVar) voidvisit(SymTypeVoid voidSymType)
-
Field Details
-
types
-
filter
-
allowDuplicates
protected boolean allowDuplicates
-
-
Constructor Details
-
SymTypeCollectionVisitor
public SymTypeCollectionVisitor()
-
-
Method Details
-
reset
public void reset() -
getCollectedTypes
-
addType
-
visit
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
- Specified by:
visitin interfaceISymTypeVisitor
-
visit
- Specified by:
visitin interfaceISymTypeVisitor
-
calculate
public List<SymTypeExpression> calculate(SymTypeExpression symType, Predicate<SymTypeExpression> filter, boolean allowDuplicates) uses this visitor with the provided symType and returns the result. it is reset during the process. -
calculate
public List<SymTypeExpression> calculate(SymTypeExpression symType, Predicate<SymTypeExpression> filter)
-