## Uses of Class
de.dhbwstuttgart.typeinference.Pair

- Packages that use Pair
  Package | Description
  --- | ---
  de.dhbwstuttgart.core |
  de.dhbwstuttgart.parser |
  de.dhbwstuttgart.syntaxtree |
  de.dhbwstuttgart.syntaxtree.type |
  de.dhbwstuttgart.typeinference |
  de.dhbwstuttgart.typeinference.typedeployment |
  de.dhbwstuttgart.typeinference.unify |

- - ### Uses of Pair in de.dhbwstuttgart.core

    Fields in de.dhbwstuttgart.core with type parameters of type Pair
    Modifier and Type | Field and Description
    --- | ---
    `Menge<Pair>` | MyCompiler.`testPair`

  - ### Uses of Pair in de.dhbwstuttgart.parser

    Fields in de.dhbwstuttgart.parser with type parameters of type Pair
    Modifier and Type | Field and Description
    --- | ---
    `Menge<Pair>` | JavaParser.`testPair`

  - ### Uses of Pair in de.dhbwstuttgart.syntaxtree

    Methods in de.dhbwstuttgart.syntaxtree that return Pair
    Modifier and Type | Method and Description
    --- | ---
    `private Pair` | SourceFile.`createPairFromClassAndSuperclass(Class baseClass, Type superclass, Menge classParaOrg, Menge superclassParaOrg, TypeAssumptions ass)` Erstellt ein Typ-Paar, welches im 1.

  - ### Uses of Pair in de.dhbwstuttgart.syntaxtree.type

    Fields in de.dhbwstuttgart.syntaxtree.type declared as Pair
    Modifier and Type | Field and Description
    --- | ---
    `protected Pair` | GenericTypeVar.`genericConstraint`

  - ### Uses of Pair in de.dhbwstuttgart.typeinference

    Fields in de.dhbwstuttgart.typeinference declared as Pair
    Modifier and Type | Field and Description
    --- | ---
    `private Pair` | ConstraintPair.`p`

    Fields in de.dhbwstuttgart.typeinference with type parameters of type Pair
    Modifier and Type | Field and Description
    --- | ---
    `private Menge<Pair>` | TypeinferenceResultSet.`constraints` Alle Constraints vor der Unifizierung.
    `(package private) Menge<Pair>` | ResultSet.`resultPairs`

    Methods in de.dhbwstuttgart.typeinference that return Pair
    Modifier and Type | Method and Description
    --- | ---
    `Pair` | Pair.`clone()` Author: Arne LÃ¼dtke Erzeugt einen Klon des Paares.
    `Pair` | Pair.`copyPair()`
    `Pair` | SingleConstraint.`getPair()`
    `Pair` | ConstraintPair.`getPair()`

    Methods in de.dhbwstuttgart.typeinference that return types with arguments of type Pair
    Modifier and Type | Method and Description
    --- | ---
    `Menge<Pair>` | TypeinferenceResultSet.`getConstraints()`
    `Menge<Pair>` | ResultSet.`getConstraintsFor(Menge<TypePlaceholder> typePlaceholders)` Sammelt alle Constraints, welche mit den Ã¼bergebenen TPH's in Verbindung stehen.
    `Menge<Pair>` | ResultSet.`getResultSet()`
    `java.util.Iterator<Pair>` | ResultSet.`iterator()`
    `java.util.Iterator<Pair>` | UndConstraint.`iterator()`

    Methods in de.dhbwstuttgart.typeinference with parameters of type Pair
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | Pair.`Pair_isEquiv(Pair p)`

    Method parameters in de.dhbwstuttgart.typeinference with type arguments of type Pair
    Modifier and Type | Method and Description
    --- | ---
    `void` | ConstraintsSet.`add(KomplexeMenge<Pair> constraint)`
    `private int` | ResultSet.`findPairWithTypeEqualTo(Type type, Menge<Pair> inResultPairs)`
    `boolean` | Pair.`isInMenge(Menge<Pair> V)`

    Constructor parameters in de.dhbwstuttgart.typeinference with type arguments of type Pair
    Constructor and Description
    `ResultSet(Menge<Pair> resultSet)`
    `TypeinferenceResultSet(Class inferedClass, Menge<Pair> constraints, ResultSet unifiedConstraints)`

  - ### Uses of Pair in de.dhbwstuttgart.typeinference.typedeployment

    Fields in de.dhbwstuttgart.typeinference.typedeployment declared as Pair
    Modifier and Type | Field and Description
    --- | ---
    `private Pair` | GenericVarExtendsDeclarationPatch.`genericPair`

    Methods in de.dhbwstuttgart.typeinference.typedeployment with parameters of type Pair
    Modifier and Type | Method and Description
    --- | ---
    `void` | GenericVarPatch.`add(Pair p)` FÃ¼gt eine generische Variable in Form eines Pairs an.

    Method parameters in de.dhbwstuttgart.typeinference.typedeployment with type arguments of type Pair
    Modifier and Type | Method and Description
    --- | ---
    `void` | GenericVarPatch.`addPairs(Menge<Pair> pairs)`
    `private boolean` | TypeInsertSet.`pairsDeclareTPH(Menge<Pair> ps, TypePlaceholder tph)`

    Constructors in de.dhbwstuttgart.typeinference.typedeployment with parameters of type Pair
    Constructor and Description
    `GenericVarExtendsDeclarationPatch(Pair p)`

  - ### Uses of Pair in de.dhbwstuttgart.typeinference.unify

    Fields in de.dhbwstuttgart.typeinference.unify with type parameters of type Pair
    Modifier and Type | Field and Description
    --- | ---
    `(package private) Menge<Pair>` | FC_TTO.`FC`
    `(package private) Menge<Pair>` | MUB.`sigma`

    Methods in de.dhbwstuttgart.typeinference.unify that return Pair
    Modifier and Type | Method and Description
    --- | ---
    `static Pair` | Unify.`isInFC(RefType R1, RefType R2, Menge<Pair> FC)`
    `private static Pair` | Unify.`isInFClinks(RefType RT1, RefType RT2, Menge<Pair> FC)`
    `static Pair` | Unify.`isInFCrechtsUnify(RefType RT1, RefType RT2, FC_TTO fc_tto)`

    Methods in de.dhbwstuttgart.typeinference.unify that return types with arguments of type Pair
    Modifier and Type | Method and Description
    --- | ---
    `Menge<Menge<Pair>>` | Unifier.`apply(Menge<Pair> E)`
    `private static Menge<Menge<Pair>>` | Unify.`cartProductPair(Menge<Menge<Pair>> vec)` Ãberladung der Funktion cartProductPair, damit der Programmierer beim ersten Aufruf nicht den 2.
    `private static Menge<Menge<Pair>>` | Unify.`cartProductPair(Menge<Menge<Pair>> vec, int index)` Erzeugt das Kartesische Product von mehreren Mengeen von Paaren.
    `static Menge<Menge<Pair>>` | Unify.`copyMengeMengePair(Menge<Menge<Pair>> vp)`
    `static Menge<Pair>` | Unify.`copyMengePair(Menge<Pair> vp)`
    `private static Menge<Menge<Pair>>` | Unify.`generateSetOfSetOfPair(Type TA1, Menge<? extends Type> otherPairTypes)` Diese Methode generiert einen Menge> wobei immer der Ã¼bergebene TA1 vorne steht, und jeder Typ aus otherPairTypes hinten.
    `Menge<Pair>` | FC_TTO.`getFC()`
    `Menge<Pair>` | MUB.`getUnifier()`
    `static Menge<Menge<Pair>>` | Unify.`instanceSmaller(Pair P, FC_TTO fc_tto)`
    `static Menge<Pair>` | Unify.`sub_unify(Menge<Pair> E, FC_TTO fc_tto)`
    `static Menge<Pair>` | Unify.`sub_unify(Menge<Pair> E, FC_TTO fc_tto, boolean useSubst)`
    `static Menge<Pair>` | Unify.`SubstHashtable2MengePair(java.util.Hashtable<JavaClassName,Type> ht)`
    `static Menge<Menge<Pair>>` | Unify.`unify(Menge<Pair> E, FC_TTO fc_tto)` Einstieg in die Unifizierung mit Wildcards
    `static Menge<Menge<Pair>>` | Unify.`unify(Type ty1, Type ty2, FC_TTO fc_tto)` Unifiziert ein Pair mit den Elementen ty1 und ty2 -> (ty1 < ty2)
    `static Menge<Menge<Pair>>` | Unify.`unifyFiltered(Menge<Pair> E, FC_TTO fc_tto, boolean filter)`
    `static Menge<Menge<Pair>>` | Unify.`unifyWC(Pair P, FC_TTO fc_tto)` Einstieg in die Unifizierung mit Wildcards
    `static Menge<Menge<Pair>>` | Unify.`unifyWC(Type ty1, Type ty2, FC_TTO fc_tto)` Einstieg in die Unifizierung mit Wildcards

    Methods in de.dhbwstuttgart.typeinference.unify with parameters of type Pair
    Modifier and Type | Method and Description
    --- | ---
    `private static void` | Unify.`adapt(Menge<Pair> H, Pair PFC, RefType TA1, RefType TA2, FC_TTO fc_tto)` Implementiert die adapt Regel des sub_unify
    `private static void` | Unify.`adaptExt(Menge<Pair> H, Pair PFC, RefType TA1, RefType TA2, FC_TTO fc_tto)` Implementiert die adaptExt Regel des sub_unify
    `private static void` | Unify.`adaptSup(Menge<Pair> H, Pair PFC, RefType TA1, RefType TA2, FC_TTO fc_tto)` Implementiert die adaptSup Regel des sub_unify
    `static Menge<Menge<Pair>>` | Unify.`instanceSmaller(Pair P, FC_TTO fc_tto)`
    `static boolean` | Unify.`Subst(Pair P, int nTypnrInPair, TypePlaceholder a, Type o, boolean bMitVorbedingung)`
    `static Menge<Menge<Pair>>` | Unify.`unifyWC(Pair P, FC_TTO fc_tto)` Einstieg in die Unifizierung mit Wildcards

    Method parameters in de.dhbwstuttgart.typeinference.unify with type arguments of type Pair
    Modifier and Type | Method and Description
    --- | ---
    `private static void` | Unify.`adapt(Menge<Pair> H, Pair PFC, RefType TA1, RefType TA2, FC_TTO fc_tto)` Implementiert die adapt Regel des sub_unify
    `private static void` | Unify.`adaptExt(Menge<Pair> H, Pair PFC, RefType TA1, RefType TA2, FC_TTO fc_tto)` Implementiert die adaptExt Regel des sub_unify
    `private static void` | Unify.`adaptSup(Menge<Pair> H, Pair PFC, RefType TA1, RefType TA2, FC_TTO fc_tto)` Implementiert die adaptSup Regel des sub_unify
    `static Menge<RefType>` | Unify.`allGreater(RefType ty, Menge<Pair> FC)`
    `static Menge<RefType>` | Unify.`allSmaller(RefType ty, Menge<Pair> FC)`
    `Menge<Menge<Pair>>` | Unifier.`apply(Menge<Pair> E)`
    `private static Menge<Menge<Pair>>` | Unify.`cartProductPair(Menge<Menge<Pair>> vec)` Ãberladung der Funktion cartProductPair, damit der Programmierer beim ersten Aufruf nicht den 2.
    `private static Menge<Menge<Pair>>` | Unify.`cartProductPair(Menge<Menge<Pair>> vec, int index)` Erzeugt das Kartesische Product von mehreren Mengeen von Paaren.
    `static Menge<Menge<Pair>>` | Unify.`copyMengeMengePair(Menge<Menge<Pair>> vp)`
    `static Menge<Pair>` | Unify.`copyMengePair(Menge<Pair> vp)`
    `static boolean` | Unify.`hasSolvedForm(Menge<Pair> E)`
    `static Pair` | Unify.`isInFC(RefType R1, RefType R2, Menge<Pair> FC)`
    `private static Pair` | Unify.`isInFClinks(RefType RT1, RefType RT2, Menge<Pair> FC)`
    `static java.util.Hashtable<JavaClassName,Type>` | Unify.`MengePair2SubstHashtableMengePair(Menge<Pair> v)`
    `private UnifyResult` | ParallelUnify.`parallelUnify(Menge<Pair> pairs, FC_TTO fc)`
    `static void` | Unify.`printMenge(java.lang.String strMenge, Menge<Pair> E, int nDebug)`
    `static void` | Unify.`printMengeUnifier(java.lang.String strMenge, Menge<Menge<Pair>> Uni, int nDebug)`
    `private static void` | Unify.`reduce1(Menge<Pair> H, RefType TA1, RefType TA2, Menge TTO)` Implementiert die reduce1 Regel des sub_unify
    `private static void` | Unify.`reduce2(Menge<Pair> H, RefType TA1, RefType TA2, Menge TTO)` Implementiert die reduce2 Regel des sub_unify
    `private static void` | Unify.`reduceEq(Menge<Pair> H, RefType TA1, RefType TA2, Menge TTO)` Implementiert die reduceEq Regel des sub_unify Da in reduce2 unnÃ¶tigerweise pi verwendet wird (siehe Kommentar in reduce2), kann reduceEq einfach an reduce2 deligieren.
    `private static void` | Unify.`reduceExt(Menge<Pair> H, RefType TA1, RefType TA2, Menge TTO)` Implementiert die reduceExt Regel des sub_unify
    `private static void` | Unify.`reduceSup(Menge<Pair> H, RefType TA1, RefType TA2, Menge TTO)` Implementiert die reduceSup Regel des sub_unify
    `static Menge<Pair>` | Unify.`sub_unify(Menge<Pair> E, FC_TTO fc_tto)`
    `static Menge<Pair>` | Unify.`sub_unify(Menge<Pair> E, FC_TTO fc_tto, boolean useSubst)`
    `private static void` | Unify.`testUnifyErg(Menge<Menge<Pair>> unifyErgs, RefType test)` Diese Methode wird verwendet, um Zuordnungen z.B.
    `static Menge<Menge<Pair>>` | Unify.`unify(Menge<Pair> E, FC_TTO fc_tto)` Einstieg in die Unifizierung mit Wildcards
    `static Menge<Menge<Pair>>` | Unify.`unifyFiltered(Menge<Pair> E, FC_TTO fc_tto, boolean filter)`

    Constructors in de.dhbwstuttgart.typeinference.unify with parameters of type Pair
    Constructor and Description
    `CSubstitution(Pair unifier)`

    Constructor parameters in de.dhbwstuttgart.typeinference.unify with type arguments of type Pair
    Constructor and Description
    `CSubstitutionSet(Menge<Pair> unifiers)`
    `FC_TTO(Menge<Pair> fc, Menge tto, Menge<Class> classv)`
    `MUB(Menge<? extends Type> M, Menge<Pair> s)`