Package Type

Class FunctionType


  • public class FunctionType
    extends Type
    • Constructor Detail

      • FunctionType

        public FunctionType​(Type returnType,
                            java.util.ArrayList<Type> argsTypes)
        Constructeur
        Parameters:
        returnType - type de retour
        argsTypes - liste des types des arguments
    • Method Detail

      • getReturnType

        public Type getReturnType()
        Getter du type de retour
        Returns:
        type de retour
      • getArgsType

        public Type getArgsType​(int i)
        Getter du type du i-eme argument
        Parameters:
        i - entier
        Returns:
        type du i-eme argument
      • getNbArgs

        public int getNbArgs()
        Getter du nombre d'arguments
        Returns:
        nombre d'arguments
      • unify

        public java.util.Map<UnknownType,​Type> unify​(Type t)
        Description copied from class: Type
        Unification
        Specified by:
        unify in class Type
        Parameters:
        t - type à unifier
        Returns:
        la liste des substitutions à effectuer (null si pas unifiable)
      • equals

        public boolean equals​(Type t)
        Description copied from class: Type
        Test d'égalité
        Specified by:
        equals in class Type
        Parameters:
        t - type
        Returns:
        boolean
      • substitute

        public Type substitute​(UnknownType v,
                               Type t)
        Description copied from class: Type
        Substitution
        Specified by:
        substitute in class Type
        Parameters:
        v - type variable à substituer
        t - type par lequel remplacer v
        Returns:
        Type obtenu en remplaçant v par t
      • contains

        public boolean contains​(UnknownType v)
        Description copied from class: Type
        Test si le type dépend du type variable v
        Specified by:
        contains in class Type
        Parameters:
        v - type variable
        Returns:
        boolean