mathpaqs_20230121.0.0_773568e5/lin_alg/integer_arrays_io.adb

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
-- integer_arrays_io.adb    generic package body

package body Integer_Arrays_IO is

  procedure PUT (A     : in INTEGER_MATRIX ;
                 WIDTH : in Ada.Text_IO.FIELD := INTEGER_TYPE_IO.DEFAULT_WIDTH;
                 BASE  : in Ada.Text_IO.FIELD := INTEGER_TYPE_IO.DEFAULT_BASE) is
  begin
    for I in A'RANGE ( 1 ) loop
      for J in A'RANGE ( 2 ) loop
        Ada.Text_IO.PUT ( "INTEGER_MATRIX( " ) ;
        Ada.Text_IO.PUT ( INTEGER'IMAGE ( I ) ) ;
        Ada.Text_IO.PUT ( " , " ) ;
        Ada.Text_IO.PUT ( INTEGER'IMAGE ( J ) ) ;
        Ada.Text_IO.PUT ( " ) = " ) ;
        INTEGER_TYPE_IO.PUT ( A( I , J ), WIDTH, BASE) ;
        Ada.Text_IO.NEW_LINE ;
      end loop ;
    end loop ;
  end PUT ;

  procedure PUT (V    : in INTEGER_VECTOR ;
                 WIDTH : in Ada.Text_IO.FIELD := INTEGER_TYPE_IO.DEFAULT_WIDTH;
                 BASE  : in Ada.Text_IO.FIELD := INTEGER_TYPE_IO.DEFAULT_BASE) is
  begin
    for I in V'RANGE loop
      Ada.Text_IO.PUT ( " INTEGER_VECTOR( " ) ;
      Ada.Text_IO.PUT ( INTEGER'IMAGE ( I ) ) ;
      Ada.Text_IO.PUT ( " ) = " ) ;
      INTEGER_TYPE_IO.PUT ( V( I ), WIDTH, BASE) ;
      Ada.Text_IO.NEW_LINE ;
    end loop ;
  end PUT ;

  procedure GET (A     : out INTEGER_MATRIX ;
                 WIDTH : in Ada.Text_IO.FIELD := 0) is
  begin
    for I in A'RANGE ( 1 ) loop
      for J in A'RANGE ( 2 ) loop
        INTEGER_TYPE_IO.GET ( A( I , J ), WIDTH) ;
      end loop ;
    end loop ;
  end GET ;


  procedure GET (V     : out INTEGER_VECTOR ;
                 WIDTH : in Ada.Text_IO.FIELD := 0) is
  begin
    for I in V'RANGE loop
      INTEGER_TYPE_IO.GET ( V( I ), WIDTH) ;
    end loop ;
  end GET ;




  procedure PUT (FILE  : in  Ada.Text_IO.FILE_TYPE;
                 A     : in INTEGER_MATRIX ;
                 WIDTH : in Ada.Text_IO.FIELD := INTEGER_TYPE_IO.DEFAULT_WIDTH;
                 BASE  : in Ada.Text_IO.FIELD := INTEGER_TYPE_IO.DEFAULT_BASE) is
  begin
    for I in A'RANGE ( 1 ) loop
      for J in A'RANGE ( 2 ) loop
        INTEGER_TYPE_IO.PUT ( FILE, A( I , J ), WIDTH, BASE) ;
      end loop ;
    end loop ;
  end PUT ;

  procedure PUT (FILE  : in  Ada.Text_IO.FILE_TYPE;
                 V    : in INTEGER_VECTOR ;
                 WIDTH : in Ada.Text_IO.FIELD := INTEGER_TYPE_IO.DEFAULT_WIDTH;
                 BASE  : in Ada.Text_IO.FIELD := INTEGER_TYPE_IO.DEFAULT_BASE) is
  begin
    for I in V'RANGE loop
      INTEGER_TYPE_IO.PUT ( FILE, V( I ), WIDTH, BASE) ;
    end loop ;
  end PUT ;

  procedure GET (FILE  : in  Ada.Text_IO.FILE_TYPE;
                 A     : out INTEGER_MATRIX ;
                 WIDTH : in Ada.Text_IO.FIELD := 0) is
  begin
    for I in A'RANGE ( 1 ) loop
      for J in A'RANGE ( 2 ) loop
        INTEGER_TYPE_IO.GET ( FILE, A( I , J ), WIDTH) ;
      end loop ;
    end loop ;
  end GET ;


  procedure GET (FILE  : in  Ada.Text_IO.FILE_TYPE;
                 V     : out INTEGER_VECTOR ;
                 WIDTH : in Ada.Text_IO.FIELD := 0) is
  begin
    for I in V'RANGE loop
      INTEGER_TYPE_IO.GET ( FILE, V( I ), WIDTH) ;
    end loop ;
  end GET ;

end Integer_Arrays_IO;