Input-output
is provided through language-defined packages, each of which is a child
of the root package Ada. The generic packages Sequential_IO and Direct_IO
define input-output operations applicable to files containing elements
of a given type. The generic package Storage_IO supports reading from
and writing to an in-memory buffer. Additional operations for text input-output
are supplied in the packages Text_IO, Wide_Text_IO, and Wide_Wide_Text_IO.
Heterogeneous input-output is provided through the child packages Streams.Stream_IO
and Text_IO.Text_Streams (see also
13.13).
The package IO_Exceptions defines the exceptions needed by the predefined
input-output packages.