de.dhbwstuttgart.typeinference

## Class ConstraintsSet

- java.lang.Object
- - de.dhbwstuttgart.typeinference.constraints.UndMenge<Pair>
  - - de.dhbwstuttgart.typeinference.ConstraintsSet

All Implemented Interfaces:
  KomplexeMenge<Pair>

Direct Known Subclasses:
  ParallelConstraintSet

    public class ConstraintsSet
    extends UndMenge<Pair>

### Field Summary

Fields
`private static Logger` `log`

### Fields inherited from class de.dhbwstuttgart.typeinference.UndMenge

`set`

### Constructor Summary

Constructors
Constructor and Description
`ConstraintsSet()`

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `add(ConstraintsSet CSet)`
`void` `add(KomplexeMenge<Pair> constraint)`
`private Menge<UndConstraint>` `filterUndConstraints()` Aus dem ConstraintsSet [ u1, u2, ...
`void` `filterWrongConstraints(Unifier unify)` Liefert alle Constraint-Variationen
`void` `unifyUndConstraints(Unifier unifier)` Nimmt alle UndConstraints und filtert mithilfe dieser die falschen Constraints aus den OderConstraints

### Methods inherited from class de.dhbwstuttgart.typeinference.UndMenge

`addItem, addItems, cartesianProduct, getAndSets, getItems, getOrSets, toString`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Field Detail

#### log

    private static final Logger log

### Constructor Detail

#### ConstraintsSet

    public ConstraintsSet()

### Method Detail

#### add

    public void add(ConstraintsSet CSet)

#### add

    public void add(KomplexeMenge<Pair> constraint)

#### filterWrongConstraints

    public void filterWrongConstraints(Unifier unify)

Liefert alle Constraint-Variationen

#### unifyUndConstraints

    public void unifyUndConstraints(Unifier unifier)

Nimmt alle UndConstraints und filtert mithilfe dieser die falschen Constraints aus den OderConstraints

Parameters:
  `unifier` -

#### filterUndConstraints

    private Menge<UndConstraint> filterUndConstraints()

Aus dem ConstraintsSet [ u1, u2, ... (OderConstraint), ... uN ] werden alle UndConstraints, welche sich nicht innerhalb eines OderConstraints befinden, herausgefiltert

Returns:
  [u1, ... , uN]