Ada Programming/Keywords/use

Use clause
There are two versions of use clauses, a use_package_clause and a use_type_clause.

At library level
This use_package_clause makes the content of a package directly visible. If applied on the library level, its scope is the complete library unit.

A use clause never hides anything that is already directly visible without it. All use clauses in effect in a certain scope act on the same level: Two homographs in different packages must still be named as selected components.

;   ;  Hello Put_Line("Hello, world!"); New_Line; Put_Line("I am an Ada program with package use."); Hello;

If readability is your main concern then you should avoid this kind of use clause. Either make it more local or use a use_type_clause.

At declaration level
The effect is the same as above, but the scope is the directly enclosing declaration region.

; Hello ;   Put_Line("Hello, world!"); New_Line; Put_Line("I am an Ada program with package use."); Hello;

For types
Use type clauses come in two versions.

Type_Name;

makes the operators of the type directly visible.

Type_Name;

makes the primitive operations of the type directly visible.

Representation clauses
The keywords, and  are used for representation clauses.

A record representation clause specifies the Layout aspect of a record.

An enumeration representation clause specifies the Coding aspect of an enumeration type.

See Ada Programming/Representation_clauses.

Wikibook

 * Ada Programming
 * Ada Programming/Keywords

Ada Reference Manual




Ada Quality and Style Guide


|Use Keywords:use