DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - downloadIndex: ┃ B T ┃
Length: 4804 (0x12c4) Types: TextFile Names: »B«
└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11 └─ ⟦129cab021⟧ »DATA« └─⟦this⟧ └─⟦2f6cfab89⟧ Bits:30000547 8mm tape, Rational 1000, !projects 94-01-04 └─ ⟦d65440be7⟧ »DATA« └─⟦this⟧
with Arbre; package body Table_Symbole is package La_Table_Des_Symboles is new Arbre (Item => Pobject); L_Arbre : La_Table_Des_Symboles.Object; procedure Inserer (Nom : Ptr_String; Element : Pobject; Ok : in out Boolean) is Nomt : La_Table_Des_Symboles.Ptr_String; begin Nomt := new String'(Nom.all); La_Table_Des_Symboles.Ajouter (L_Arbre, Nomt, Element, Ok); end Inserer; procedure Rechercher (Nom : Ptr_String; Element : in out Pobject; Ok : in out Boolean) is Nomt : La_Table_Des_Symboles.Ptr_String; begin Nomt := new String'(Nom.all); La_Table_Des_Symboles.Lire (L_Arbre, Nomt, Element, Ok); end Rechercher; procedure Modifier (Nom : Ptr_String; Element : in out Pobject; Ok : in out Boolean) is Nomt : La_Table_Des_Symboles.Ptr_String; begin Nomt := new String'(Nom.all); La_Table_Des_Symboles.Modifier (L_Arbre, Nomt, Element, Ok); end Modifier; procedure Recherche_Si_Parametre_De (Nom : Ptr_String; Nom_Param : Ptr_String; Valeur : in out Pobject; Ok : in out Boolean) is Object : Pobject; Nbr_Param : Natural := 0; Trouve : Boolean := False; I : Natural := 1; begin Ok := False; Rechercher (Nom, Object, Ok); if Ok then Nbr_Param := Object.Nombre_Parametre; while (I <= Nbr_Param) and (not Trouve) loop if Nom_Param.all = Object.Parametre (I).Nom.all then Trouve := True; Ok := True; Valeur := Object.Parametre (I); end if; I := I + 1; end loop; end if; end Recherche_Si_Parametre_De; procedure Lire_Parametre_De (Nom : Ptr_String; Nom_Param : Ptr_String; Valeur : in out Pobject; Ok : in out Boolean) is Object : Pobject; Nbr_Param : Natural := 0; Trouve : Boolean := False; I : Natural := 1; begin Ok := False; Rechercher (Nom, Object, Ok); if Ok then Nbr_Param := Object.Nombre_Parametre; while (I <= Nbr_Param) and (not Trouve) loop if Nom_Param.all = Object.Parametre (I).Nom.all then Trouve := True; Ok := True; Valeur := Object.Parametre (I); end if; I := I + 1; end loop; end if; end Lire_Parametre_De; procedure Lire_Parametre_De (Nom : Ptr_String; Num_Param : Natural; Valeur : in out Pobject; Ok : in out Boolean) is Object : Pobject; begin Ok := False; Rechercher (Nom, Object, Ok); if Ok then if Num_Param <= Object.Nombre_Parametre then Valeur := Object.Parametre (Num_Param); end if; end if; end Lire_Parametre_De; procedure Modifier_Parametre_De (Nom : Ptr_String; Num_Param : Natural; Valeur : in out Pobject; Ok : in out Boolean) is Object : Pobject; begin Ok := False; Rechercher (Nom, Object, Ok); if Ok then if Num_Param <= Object.Nombre_Parametre then Object.Parametre (Num_Param) := Valeur; end if; end if; end Modifier_Parametre_De; procedure Modifier_Parametre_De (Nom : Ptr_String; Nom_Param : Ptr_String; Valeur : in out Pobject; Ok : in out Boolean) is Object : Pobject; Nbr_Param : Natural := 0; Trouve : Boolean := False; I : Natural := 1; begin Ok := False; Rechercher (Nom, Object, Ok); if Ok then Nbr_Param := Object.Nombre_Parametre; while (I <= Nbr_Param) and (not Trouve) loop if Nom_Param.all = Object.Parametre (I).Nom.all then Trouve := True; Ok := True; Object.Parametre (I) := Valeur; end if; I := I + 1; end loop; end if; end Modifier_Parametre_De; end Table_Symbole;