Module Modification


module Modification: sig  end
Module permettant de modifier la table de hachage afin qu'elle soit entièrement typée


SECTION - Hash_Type.Parametre

val _Modification_Param : Creation._Hash_Type ->
Declaration.expr list -> int -> Creation._Hash_Type * bool
Fonction permettant de modifier le type d'un Hash_Type.Parametre à partir d'une liste de construction. La liste de construction correspond aux expressions passées en paramètres.. Selon l'expression, on peut donc retrouvé le type du paramètre
val _Traitement_param_Inconnu : Creation._Hash_Type -> Creation._Hash_Type list -> Creation._Hash_Type * bool
Fonction qui recherche dans la hashTable un constructeur pour typer le paramètre

SECTION - Hash_Type.Autre

val _Modification_autre : string ->
string -> Creation._Hash_Type list -> (string * Declaration.m_type) * bool
Fonction qui à partir d'un identifiant et d'une hashTable retourne un Declaration.variable contenant (identifiant, son type réel), si possible.
val _Parcours_Enum : Declaration.expr list -> string -> Declaration.m_type * bool
Fonction qui parcourt une Enumération afin de savoir si l'identifiant y est présent
val _Traitement_Enum : string ->
string -> Creation._Hash_Type list -> (string * Declaration.m_type) * bool
Fonction visant à typer les identifiants faisant référence à des Enumérations
val _Attribution_Variable_Pointee : string ->
Creation._Hash_Type list ->
Creation._Hash_Type list -> string -> string -> Declaration.m_type * bool
Fonction qui permet de trouver le type d'une variable pointée
val _Traitement_Constr_Inconnu : string ->
string ->
Declaration.expr list ->
Creation._Hash_Type list -> Declaration.expr list * bool
Fonction qui permet, dans une liste de construction, de typer les Declaration.Varia inconnus
val _Traitement_Autre_Inconnu : string -> string -> Creation._Hash_Type list -> Creation._Hash_Type * bool
Fonction qui permet de typer un Hash_Type.Autre inconnu
val _Recherche_Type_Expr : string -> string -> Creation._Hash_Type list -> Declaration.expr * bool
Fonction visant à typer les variables contenues dans les expressions
val _Modification_Expr : Declaration.expr ->
Creation._Hash_Type list -> string -> Declaration.expr * bool
Fonction visant à typer les expressions
val _Attribution_Type_Hash : Creation._Hash_Type list ->
Creation._Hash_Type list -> Creation._Hash_Type list * bool
Fonction qui permet de typer tous les éléments possibles d'une table de hachage en une seule passe
val _Attribution_Totale_Type_Hash : Creation._Hash_Type list -> Creation._Hash_Type list
Fonction qui réalise des passes de typage tantqu'il y a des modifications