## mycompiler.mytypereconstruction.unify
Class Unify

    java.lang.Object
      mycompiler.mytypereconstruction.unify.Unify

    public class Unify

extends java.lang.Object

Implementierung des Unifizierungsalgorithmus

Version:
  $Date: 2005/06/28 19:19:10 $
Author:
  Martin Pl�micke, Thomas Ott

Constructor Summary
`Unify()`

Method Summary
`de.dhbwstuttgart.typeinference.Menge` `adapt(java.lang.String strTV, Type T, de.dhbwstuttgart.typeinference.Menge vRFC, de.dhbwstuttgart.typeinference.Menge vRE)`
`static de.dhbwstuttgart.typeinference.Menge<RefType>` `allGreater(RefType ty, de.dhbwstuttgart.typeinference.Menge FC)`
`static de.dhbwstuttgart.typeinference.Menge<RefType>` `allSmaller(RefType ty, de.dhbwstuttgart.typeinference.Menge FC)`
`static de.dhbwstuttgart.typeinference.Menge<Pair>` `copyMengePair(de.dhbwstuttgart.typeinference.Menge<Pair> vp)`
`de.dhbwstuttgart.typeinference.Menge<de.dhbwstuttgart.typeinference.Menge<Pair>>` `copyMengeMengePair(de.dhbwstuttgart.typeinference.Menge<de.dhbwstuttgart.typeinference.Menge<Pair>> vp)`
`static boolean` `hasSolvedForm(de.dhbwstuttgart.typeinference.Menge E)`
`static de.dhbwstuttgart.typeinference.Menge<de.dhbwstuttgart.typeinference.Menge<Pair>>` `instanceSmaller(Pair P, FC_TTO fc_tto)`
`static Pair` `isInFC(RefType R1, RefType R2, de.dhbwstuttgart.typeinference.Menge FC)`
`static Pair` `isInFCrechtsUnify(RefType RT1, RefType RT2, FC_TTO fc_tto)`
`static boolean` `isRealSubClass(java.lang.String Basis, java.lang.String Mutter, FC_TTO fc_tto)`
`static boolean` `isRXSimilarRY(RefType RFC, RefType RY)`
`static boolean` `isTVinRefType(TyploseVariable TV, RefType RT)`
`static java.util.Hashtable` `match(RefType FCtype, RefType tomatch, java.util.Hashtable ht)`
`static int` `pi(int n, java.lang.String C, java.lang.String D, de.dhbwstuttgart.typeinference.Menge tto)`
`static void` `printMenge(java.lang.String strMenge, de.dhbwstuttgart.typeinference.Menge E, int nDebug)`
`static void` `printMengeUnifier(java.lang.String strMenge, de.dhbwstuttgart.typeinference.Menge<de.dhbwstuttgart.typeinference.Menge<Pair>> Uni, int nDebug)`
`static de.dhbwstuttgart.typeinference.Menge` `sub_unify(de.dhbwstuttgart.typeinference.Menge E, FC_TTO fc_tto)`
`static void` `Subst(Pair P, int nTypnrInPair, TyploseVariable a, Type o, boolean bMitVorbedingung)`
`static void` `SubstHashtable(RefType typterm, java.util.Hashtable ht)`
`static de.dhbwstuttgart.typeinference.Menge<Pair>` `SubstHashtable2MengePair(java.util.Hashtable ht)`
`static de.dhbwstuttgart.typeinference.Menge<de.dhbwstuttgart.typeinference.Menge<Pair>>` `unify(Type ty1, Type ty2, FC_TTO fc_tto)`
`static de.dhbwstuttgart.typeinference.Menge<de.dhbwstuttgart.typeinference.Menge<Pair>>` `unify(de.dhbwstuttgart.typeinference.Menge<Pair> E, FC_TTO fc_tto)`
`static void` `varSubst(RefType typterm, java.util.Hashtable ht)`
`static java.util.Hashtable` `MengePair2SubstHashtableMengePair(de.dhbwstuttgart.typeinference.Menge<Pair> v)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### Unify

    public Unify()

Method Detail

### unify

    public static de.dhbwstuttgart.typeinference.Menge<de.dhbwstuttgart.typeinference.Menge<Pair>> unify(Type ty1,
                                                                 Type ty2,
                                                                 FC_TTO fc_tto)

### unify

    public static de.dhbwstuttgart.typeinference.Menge<de.dhbwstuttgart.typeinference.Menge<Pair>> unify(de.dhbwstuttgart.typeinference.Menge<Pair> E,
                                                                 FC_TTO fc_tto)

### match

    public static java.util.Hashtable match(RefType FCtype,
                                            RefType tomatch,
                                            java.util.Hashtable ht)
                                     throws MatchException

  Throws:
    `MatchException`

### sub_unify

    public static de.dhbwstuttgart.typeinference.Menge sub_unify(de.dhbwstuttgart.typeinference.Menge E,
                                             FC_TTO fc_tto)

### adapt

    public de.dhbwstuttgart.typeinference.Menge adapt(java.lang.String strTV,
                                  Type T,
                                  de.dhbwstuttgart.typeinference.Menge vRFC,
                                  de.dhbwstuttgart.typeinference.Menge vRE)

### isRXSimilarRY

    public static boolean isRXSimilarRY(RefType RFC,
                                        RefType RY)

### SubstHashtable2MengePair

    public static de.dhbwstuttgart.typeinference.Menge<Pair> SubstHashtable2MengePair(java.util.Hashtable ht)

### MengePair2SubstHashtableMengePair

    public static java.util.Hashtable MengePair2SubstHashtableMengePair(de.dhbwstuttgart.typeinference.Menge<Pair> v)

### copyMengePair

    public static de.dhbwstuttgart.typeinference.Menge<Pair> copyMengePair(de.dhbwstuttgart.typeinference.Menge<Pair> vp)

### copyMengeMengePair

    public de.dhbwstuttgart.typeinference.Menge<de.dhbwstuttgart.typeinference.Menge<Pair>> copyMengeMengePair(de.dhbwstuttgart.typeinference.Menge<de.dhbwstuttgart.typeinference.Menge<Pair>> vp)

### instanceSmaller

    public static de.dhbwstuttgart.typeinference.Menge<de.dhbwstuttgart.typeinference.Menge<Pair>> instanceSmaller(Pair P,
                                                                           FC_TTO fc_tto)

### allSmaller

    public static de.dhbwstuttgart.typeinference.Menge<RefType> allSmaller(RefType ty,
                                                       de.dhbwstuttgart.typeinference.Menge FC)

### allGreater

    public static de.dhbwstuttgart.typeinference.Menge<RefType> allGreater(RefType ty,
                                                       de.dhbwstuttgart.typeinference.Menge FC)

### isInFC

    public static Pair isInFC(RefType R1,
                              RefType R2,
                              de.dhbwstuttgart.typeinference.Menge FC)

### isInFCrechtsUnify

    public static Pair isInFCrechtsUnify(RefType RT1,
                                         RefType RT2,
                                         FC_TTO fc_tto)

### isTVinRefType

    public static boolean isTVinRefType(TyploseVariable TV,
                                        RefType RT)

### Subst

    public static void Subst(Pair P,
                             int nTypnrInPair,
                             TyploseVariable a,
                             Type o,
                             boolean bMitVorbedingung)

### SubstHashtable

    public static void SubstHashtable(RefType typterm,
                                      java.util.Hashtable ht)

### isRealSubClass

    public static boolean isRealSubClass(java.lang.String Basis,
                                         java.lang.String Mutter,
                                         FC_TTO fc_tto)

### pi

    public static int pi(int n,
                         java.lang.String C,
                         java.lang.String D,
                         de.dhbwstuttgart.typeinference.Menge tto)
                  throws SCException

  Throws:
    `SCException`

### printMengeUnifier

    public static void printMengeUnifier(java.lang.String strMenge,
                                         de.dhbwstuttgart.typeinference.Menge<de.dhbwstuttgart.typeinference.Menge<Pair>> Uni,
                                         int nDebug)

### printMenge

    public static void printMenge(java.lang.String strMenge,
                                  de.dhbwstuttgart.typeinference.Menge E,
                                  int nDebug)

### hasSolvedForm

    public static boolean hasSolvedForm(de.dhbwstuttgart.typeinference.Menge E)

### varSubst

    public static void varSubst(RefType typterm,
                                java.util.Hashtable ht)