Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Copyright (C) 2011 Equipe pedagogique Universite Toulouse Paul Sabatier L1 - Tous droits reserves.
- -- Ce programme est un logiciel libre ; vous pouvez le redistribuer ou le
- -- modifier suivant les termes de la "GNU General Public License" telle que
- -- publiee par la Free Software Foundation : soit la version 3 de cette
- -- licence, soit (a votre gre) toute version ulterieure.
- -- Ce programme est distribue dans l'espoir qu'il vous sera utile, mais SANS
- -- AUCUNE GARANTIE : sans meme la garantie implicite de COMMERCIALISABILITE
- -- ni d'ADEQUATION A UN OBJECTIF PARTICULIER. Consultez la Licence Generale
- -- Publique GNU pour plus de details.
- -- Consultez : <http://www.gnu.org/licenses/>.
- -- ***********************
- -- Prologue de compilation
- -- ***********************
- with text_io;
- with io_exceptions;
- -- **************************************
- -- Specification du paquetage utilisateur
- -- **************************************
- package entrees_sorties is
- -- ***********************************************************************
- -- Ce paquetage contient un sous-ensemble des operations d'entrees sorties
- -- L'utilisateur n'a pas a connaitre la notion de genericite
- -- Seules quelques operations concernant
- -- les entiers,
- -- les flottants,
- -- les booleens,
- -- les caracteres et
- -- les chaines de caracteres
- -- sont fournies.
- -- ainsi que les exceptions les plus importantes
- -- concernant les entrees-sorties
- -- ***********************************************************************
- -- =========================================================
- -- Definition des paquetages necessaires aux entrees-sorties
- -- =========================================================
- package int_io is new text_io.integer_io(Integer);
- package flt_io is new text_io.float_io(Float);
- package bool_io is new text_io.enumeration_io(Boolean);
- -- =======================================
- -- Renommage de certains types necessaires
- -- =======================================
- subtype Count is text_io.Count;
- subtype Positive_count is text_io.Positive_count;
- subtype Field is text_io.Field;
- subtype Number_base is text_io.Number_base;
- subtype Type_set is text_io.Type_set;
- -- =================================
- -- Renommage de certaines exceptions
- -- =================================
- DATA_ERROR : exception renames IO_EXCEPTIONS.data_error;
- END_ERROR : exception renames IO_EXCEPTIONS.end_error;
- -- ===============================
- -- Operations exportees de TEXT_IO
- -- ===============================
- procedure get (item: out Character) renames text_io.get;
- procedure put (item: in Character) renames text_io.put;
- procedure get (item: out String) renames text_io.get;
- procedure put (item: in String) renames text_io.put;
- procedure get_LINE (item: out String; LAST: out natural) renames text_io.get_line;
- procedure put_LINE (item: in String) renames text_io.put_line;
- procedure skip_line (spacing : in Positive_count :=1) renames text_io.skip_line;
- procedure new_page renames text_io.new_page;
- procedure skip_page renames text_io.skip_page;
- procedure new_line (spacing: in Positive_count:=1) renames text_io.new_line;
- procedure set_col (to: in Positive_count) renames text_io.set_col;
- procedure set_line(to: in Positive_count) renames text_io.set_line;
- function end_of_line return Boolean renames text_io.end_of_line;
- function end_of_file return Boolean renames text_io.end_of_file;
- -- ============================
- -- Entrees et sorties d'entiers
- -- ============================
- procedure get (item: out Integer; width: in Field:=0)
- renames INT_IO.get;
- procedure put (item: in Integer;
- width: in Field := INT_IO.default_width;
- base: in number_base := INT_IO.default_base) renames INT_IO.put;
- -- ===============================
- -- Entrees et sorties de flottants
- -- ===============================
- procedure get (item: out float;
- width: in Field := 0) renames FLT_IO.get;
- procedure put (item: in float;
- fore: in Field := FLT_IO.default_fore;
- aft: in Field := FLT_IO.default_aft;
- exp: in Field := FLT_IO.default_exp) renames FLT_IO.put;
- -- ==============================
- -- Entrees et sorties de booleens
- -- ==============================
- procedure get (item: out Boolean) renames BOOL_IO.get;
- procedure put (item: in Boolean;
- width: in Field := BOOL_IO.default_width;
- set: in text_io.type_set := BOOL_IO.default_setting)
- renames BOOL_IO. put;
- end entrees_sorties;
Advertisement
Add Comment
Please, Sign In to add comment