DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 Tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400 Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download
Index: ┃ B T

⟦bdc29f627⟧ TextFile

    Length: 2273 (0x8e1)
    Types: TextFile
    Names: »B«

Derivation

└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
    └─ ⟦129cab021⟧ »DATA« 
        └─⟦this⟧ 

TextFile

with String_Utilities;
with Text_Io;
package body Token is

    type P_String is access String;

    subtype Keyword_Tokens is Token.Object range L_Acteur .. L_Theatre;
    type Keywords is array (Keyword_Tokens) of P_String;
    subtype Index is String (1 .. 80);

    The_Keywords : constant Keywords :=
       (L_Acteur => new String'("ACTEUR"),
        L_Activer => new String'("ACTIVER"),
        L_Appel_Effet => new String'("APPEL_EFFET"),
        L_Attendre => new String'("ATTENDRE"),
        L_Binaire => new String'("BINAIRE"),
        L_Changer => new String'("CHANGER"),
        L_Collection => new String'("COLLECTION"),
        L_Constitue => new String'("CONSTITUE"),
        L_Dans => new String'("DANS"),
        L_Debut => new String'("DEBUT"),
        L_Desact => new String'("DESACTIVER"),
        L_Discret => new String'("DISCRET"),
        L_Effet => new String'("EFFET"),
        L_Est => new String'("EST"),
        L_Evoluer => new String'("EVOLUER"),
        L_Exp => new String'("EXPERIENCE"),
        L_Faire => new String'("FAIRE"),
        L_Fin => new String'("FIN"),
        L_Fois => new String'("FOIS"),
        L_Fugitif => new String'("FUGITIF"),
        L_Lancer_Scene => new String'("LANCER_SCENE"),
        L_Materiel => new String'("MATERIEL"),
        L_Puis => new String'("PUIS"),
        L_Repeter => new String'("REPETER"),
        L_Repres => new String'("REPRESENTATION"),
        L_Scene => new String'("SCENE"),
        L_Spectacle => new String'("SPECTACLE"),
        L_Station => new String'("STATION"),
        L_Tantque => new String'("TANTQUE"),
        L_Temporel => new String'("TEMPOREL"),
        L_Theatre => new String'("THEATRE"));


    function Normaliser (S : String; Length : Natural) return String is
    begin
        if S'Length >= Length then
            return S (S'First .. S'First + Length - 1);
        else
            return S & (1 .. Length - S'Length => ' ');
        end if;
    end Normaliser;


    function Value (S : String) return Token.Object is
        use String_Utilities;
    begin
        for I in Keyword_Tokens loop
            if Equal (S, The_Keywords (I).all) then
                return I;
            end if;
        end loop;
        return L_Id;
    end Value;

end Token;