14. File Naming Conventions and Application Name SpaceΒΆ
Any ASIS application depends on the ASIS interface components; an ASIS application programmer thus needs to be alert to (and to avoid) clashes with the names of these components.
ASIS-for-GNAT includes the full specification of the ASIS Standard,
and also adds the following children and grandchildren of the root Asis
package:
Asis.Extensions
hierarchy (the source file names start withasis-extensions
) defines some useful ASIS extensions, see ASIS Reference Manual for more details.Asis.Set_Get
(the source filesasis-set_get.ad(b|s)
respectively) contains the access and update subprograms for the implementation of the main ASIS abstractions defined inAsis
.Asis.Text.Set_Get
(the source filesasis-text-set_get.ad(b|s)
respectively) contains the access and update subprograms for the implementation of the ASIS abstractions defined inAsis.Text
;
All other ASIS-for-GNAT Ada implementation components belong to the
hierarchy rooted at the package A4G
(which comes from ‘ASIS-for-GNAT’).
ASIS-for-GNAT also incorporates the following GNAT components as a part of the ASIS implementation:
Alloc
Atree
Casing
Csets
Debug
Einfo
Elists
Fname
Gnatvsn
Hostparm
Krunch
Lib
Lib.List
Lib.Sort
Namet
Nlists
Opt
Output
Repinfo
Scans
Sinfo
Sinput
Snames
Stand
Stringt
Table
Tree_In
Tree_Io
Types
Uintp
Uname
Urealp
Widechar
Therefore, in your ASIS application you should not add children at any level of the Asis
or A4G
hierarchies, and you should avoid using
any name from the list of the GNAT component names above.
All Ada source files making up the ASIS implementation for GNAT (including the GNAT components being a part of ASIS-for-GNAT) follow the GNAT file name conventions without any name ‘krunch’ing.