DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400

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

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦9b77c41e3⟧ Ada Source

    Length: 6144 (0x1800)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package body External_File_Manager, seg_030b2d

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦5a81ac88f⟧ »Space Info Vol 1« 
        └─⟦this⟧ 

E3 Source Code



with Misc_Defs, Tstring, Text_Io, Misc;
use Misc_Defs, Tstring, Text_Io, Misc;

package body External_File_Manager is

-- FIX comment about compiler dependent

--   subtype SUFFIX_TYPE is STRING(1 .. 1);
--
--   function ADA_SUFFIX return SUFFIX_TYPE is
--   begin
--     return "a";
--   end ADA_SUFFIX;

    Ada_Suffix : constant String := "a"; -- isn't it easier?

    Std_Err : File_Type;

    function Standard_Error return File_Type is
    begin
        return Std_Err;
    end Standard_Error;


    procedure Get_Io_File (F : in out File_Type) is
    begin
        if (Len (Infilename) /= 0) then
            Create (F, Out_File, Str (Misc.Basename) & "_io." & Ada_Suffix);
        else
            Create (F, Out_File, "aflex_yy_io." & Ada_Suffix);
        end if;
    exception
        when Use_Error | Name_Error =>
            Misc.Aflexfatal ("could not create IO package file");
    end Get_Io_File;

    procedure Get_Dfa_File (F : in out File_Type) is
    begin
        if (Len (Infilename) /= 0) then
            Create (F, Out_File, Str (Misc.Basename) & "_dfa." & Ada_Suffix);
        else
            Create (F, Out_File, "aflex_yy_dfa." & Ada_Suffix);
        end if;
    exception
        when Use_Error | Name_Error =>
            Misc.Aflexfatal ("could not create DFA package file");
    end Get_Dfa_File;

    procedure Get_Scanner_File (F : in out File_Type) is
        Outfile_Name : Vstring;
    begin
        if (Len (Infilename) /= 0) then

            -- give out infile + ada_suffix
            Outfile_Name := Misc.Basename & "." & Ada_Suffix;
        else
            Outfile_Name := Vstr ("aflex_yy." & Ada_Suffix);
        end if;

        Create (F, Out_File, Str (Outfile_Name));
        Set_Output (F);
    exception
        when Name_Error | Use_Error =>
            Misc.Aflexfatal ("can't create scanner file " & Outfile_Name);
    end Get_Scanner_File;

    procedure Get_Backtrack_File (F : in out File_Type) is
    begin
        Create (F, Out_File, "aflex.backtrack");
    exception
        when Use_Error | Name_Error =>
            Misc.Aflexfatal ("could not create backtrack file");
    end Get_Backtrack_File;

    procedure Initialize_Files is
    begin
        Create (Std_Err, Out_File, "/dev/tty");
    exception
        when Use_Error | Name_Error =>
            Misc.Aflexfatal ("could not create standard_error as /dev/tty");
    end Initialize_Files;

end External_File_Manager;
---------------------------------
-- file_managerS.a
---------------------------------
-- Copyright (c) 1990 Regents of the University of California.
-- All rights reserved.
--
-- This software was developed by John Self of the Arcadia project
-- at the University of California, Irvine.
--
-- Redistribution and use in source and binary forms are permitted
-- provided that the above copyright notice and this paragraph are
-- duplicated in all such forms and that any documentation,
-- advertising materials, and other materials related to such
-- distribution and use acknowledge that the software was developed
-- by the University of California, Irvine.  The name of the
-- University may not be used to endorse or promote products derived
-- from this software without specific prior written permission.
-- THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
-- IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
-- WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.

-- TITLE external_file_manager
-- AUTHOR: John Self (UCI)
-- DESCRIPTION opens external files for other functions
-- NOTES This package opens external files, and thus may be system dependent
--       because of limitations on file names.
--       This version is for the VADS 5.5 Ada development system.
-- $Header: /co/ua/self/arcadia/aflex/ada/src/RCS/file_managerS.a,v 1.4 90/01/12 15:20:00 self Exp Locker: self $

-- History
-- 14-Jun-1991\x09\x09Rolf EBERT\x09
--    added the function Standard_Error.

E3 Meta Data

    nblk1=5
    nid=0
    hdr6=a
        [0x00] rec0=26 rec1=00 rec2=01 rec3=038
        [0x01] rec0=1e rec1=00 rec2=02 rec3=004
        [0x02] rec0=1b rec1=00 rec2=03 rec3=084
        [0x03] rec0=11 rec1=00 rec2=04 rec3=0b8
        [0x04] rec0=06 rec1=00 rec2=05 rec3=001
    tail 0x21529830c84a6514cced8 0x42a00088462060003