A.10.2 Text File Management
Static Semantics
The only allowed file
modes for text files are the modes In_File, Out_File, and Append_File.
The subprograms given in
A.8.2 for the control
of external files, and the function End_Of_File given in
A.8.3
for sequential input-output, are also available for text files. There
is also a version of End_Of_File that refers to the current default input
file. For text files, the procedures have the following additional effects:
For the procedures Create and Open: After a file
with mode Out_File or Append_File is opened, the page length and line
length are unbounded (both have the conventional value zero). After a
file (of any mode) is opened, the current column, current line, and current
page numbers are set to one. If the mode is Append_File, it is implementation
defined whether a page terminator will separate preexisting text in the
file from the new text to be written.
For the procedure Close: If the file has the current
mode Out_File or Append_File, has the effect of calling New_Page, unless
the current page is already terminated; then outputs a file terminator.
For the procedure Reset: If the file has the current
mode Out_File or Append_File, has the effect of calling New_Page, unless
the current page is already terminated; then outputs a file terminator.
The current column, line, and page numbers are set to one, and the line
and page lengths to Unbounded. If the new mode is Append_File, it is
implementation defined whether a page terminator will separate preexisting
text in the file from the new text to be written.
The exception Mode_Error is propagated by the procedure
Reset upon an attempt to change the mode of a file that is the current
default input file, the current default output file, or the current default
error file.
NOTE An
implementation can define the Form parameter of Create and Open to control
effects including the following:
the interpretation of line and column
numbers for an interactive file, and
the interpretation of text formats
in a file created by a foreign program.
Ada 2005 and 2012 Editions sponsored in part by Ada-Europe