Ada Reference Manual (Ada 2022) — Legal Information

# K.1 Language-Defined Aspects

1/3
This subclause summarizes the definitions given elsewhere of the language-defined aspects. Aspects are properties of entities that can be specified by the Ada program; unless otherwise specified below, aspects can be specified using an aspect_specification.
2/3
Address
Machine address of an entity. See 13.3.
2.1/5
Aggregate
Mechanism to define user-defined aggregates. See 4.3.5.
3/3
Alignment (object)
Alignment of an object. See 13.3.
4/3
Alignment (subtype)
Alignment of a subtype. See 13.3.
5/4
All_Calls_Remote
All indirect or dispatching remote subprogram calls, and all direct remote subprogram calls, should use the Partition Communication Subsystem. See E.2.3.
5.1/5
Allows_Exit
An indication of whether a subprogram will operate correctly for arbitrary transfers of control. See 5.5.3.
6/3
Asynchronous
Remote procedure calls are asynchronous; the caller continues without waiting for the call to return. See E.4.1.
7/3
Atomic
Declare that a type, object, or component is atomic. See C.6.
8/3
Atomic_Components
Declare that the components of an array type or object are atomic. See C.6.
9/3
Attach_Handler
Protected procedure is attached to an interrupt. See C.3.1.
10/3
Bit_Order
Order of bit numbering in a record_representation_clause. See 13.5.3.
11/3
Coding
Internal representation of enumeration literals. Specified by an enumeration_representation_clause, not by an aspect_specification. See 13.4.
12/3
Component_Size
Size in bits of a component of an array type. See 13.3.
13/3
Constant_Indexing
Defines function(s) to implement user-defined indexed_components. See 4.1.6.
14/3
Convention
Calling convention or other convention used for interfacing to other languages. See B.1.
15/5
CPU
Processor on which a given task, or calling task for a protected operation, should run. See D.16.
16/3
Default_Component_Value
Default value for the components of an array-of-scalar subtype. See 3.6.
16.1/5
Default_Initial_Condition
A condition that will hold true after the default initialization of an object. See 7.3.3.
17/3
Default_Iterator
Default iterator to be used in for loops. See 5.5.1.
18/3
Default_Storage_Pool
Default storage pool for a generic instance. See 13.11.3.
19/3
Default_Value
Default value for a scalar subtype. See 3.5.
19.1/4
Discard_Names
Requests a reduction in storage for names associated with an entity. See C.5.
19.2/5
Dispatching
Generic formal parameters used in the implementation of an entity. See H.7.1.
20/3
Dispatching_Domain
Domain (group of processors) on which a given task should run. See D.16.1.
21/5
Dynamic_Predicate
Condition that will hold true for objects of a given subtype; the subtype is not static. See 3.2.4.
22/5
Elaborate_Body
A given package will have a body, and that body is elaborated immediately after the declaration. See 10.2.1.
22.1/4
Exclusive_Functions
Specifies mutual exclusion behavior of protected functions in a protected type. See 9.5.1.
23/3
Export
Entity is exported to another language. See B.1.
24/3
External_Name
Name used to identify an imported or exported entity. See B.1.
25/3
External_Tag
Unique identifier for a tagged type in streams. See 13.3.
25.1/5
Full_Access_Only
Declare that a volatile type, object, or component is full access. See C.6.
25.2/5
Global
Global object usage contract. See 6.1.2.
25.3/5
Global'Class
Global object usage contract inherited on derivation. See 6.1.2.
26/3
Implicit_Dereference
Mechanism for user-defined implicit .all. See 4.1.5.
27/3
Import
Entity is imported from another language. See B.1.
28/3
Independent
Declare that a type, object, or component is independently addressable. See C.6.
29/3
Independent_Components
Declare that the components of an array or record type, or an array object, are independently addressable. See C.6.
30/3
Inline
For efficiency, Inline calls are requested for a subprogram. See 6.3.2.
31/3
Input
Function to read a value from a stream for a given type, including any bounds and discriminants. See 13.13.2.
31.1/4
Input'Class
Function to read a value from a stream for a the class-wide type associated with a given type, including any bounds and discriminants. See 13.13.2.
31.2/5
Integer_Literal
Defines a function to implement user-defined integer literals. See 4.2.1.
32/3
Interrupt_Handler
Protected procedure may be attached to interrupts. See C.3.1.
33/3
Interrupt_Priority
Priority of a task object or type, or priority of a protected object or type; the priority is in the interrupt range. See D.1.
34/3
Iterator_Element
Element type to be used for user-defined iterators. See 5.5.1.
34.1/5
Iterator_View
An alternative type to used for container element iterators. See 5.5.1.
35/3
Layout (record)
Layout of record components. Specified by a record_representation_clause, not by an aspect_specification. See 13.5.1.
36/3
Link_Name
Linker symbol used to identify an imported or exported entity. See B.1.
37/3
Machine_Radix
Radix (2 or 10) that is used to represent a decimal fixed point type. See F.1.
37.1/5
Max_Entry_Queue_Length
The maximum entry queue length for a task type, protected type, or entry. See D.4.
37.2/5
No_Controlled_Parts
A specification that a type and its descendants do not have controlled parts. See H.4.1.
38/5
No_Return
A subprogram will not return normally. See 6.5.1.
38.1/5
Nonblocking
Specifies that an associated subprogram does not block. See 9.5.
39/3
Output
Procedure to write a value to a stream for a given type, including any bounds and discriminants. See 13.13.2.
39.1/4
Output'Class
Procedure to write a value to a stream for a the class-wide type associated with a given type, including any bounds and discriminants. See 13.13.2.
40/3
Pack
Minimize storage when laying out records and arrays. See 13.2.
40.1/5
Parallel_Calls
Specifies whether a given subprogram is expected to be called in parallel. See 9.10.1.
40.2/5
Parallel_Iterator
An indication of whether a subprogram may use multiple threads of control to invoke a loop body procedure. See 5.5.3.
41/5
Post
Postcondition; a condition that will hold true after a call. See 6.1.1.
42/5
Post'Class
Postcondition that applies to corresponding subprograms of descendant types. See 6.1.1.
43/5
Pre
Precondition; a condition that is expected to hold true before a call. See 6.1.1.
44/5
Pre'Class
Precondition that applies to corresponding subprograms of descendant types. See 6.1.1.
44.1/4
Predicate_Failure
Action to be performed when a predicate check fails. See 3.2.4.
44.2/5
Preelaborable_Initialization
Declares that a type has preelaborable initialization. See 10.2.1.
45/3
Preelaborate
Code execution during elaboration is avoided for a given package. See 10.2.1.
46/3
Priority
Priority of a task object or type, or priority of a protected object or type; the priority is not in the interrupt range. See D.1.
47/3
Pure
Side effects are avoided in the subprograms of a given package. See 10.2.1.
47.1/5
Put_Image
Procedure to define the image of a given type. See 4.10.
48/3
Read
Procedure to read a value from a stream for a given type. See 13.13.2.
48.1/4
Read'Class
Procedure to read a value from a stream for the class-wide type associated with a given type. See 13.13.2.
48.2/5
Real_Literal
Defines a function or functions to implement user-defined real literals. See 4.2.1.
49/3
Record layout
See Layout. See 13.5.1.
50/5
Relative_Deadline
Task or protected type parameter used in Earliest Deadline First Dispatching. See D.2.6.
51/3
Remote_Call_Interface
Subprograms in a given package may be used in remote procedure calls. See E.2.3.
52/3
Remote_Types
Types in a given package may be used in remote procedure calls. See E.2.2.
53/3
Shared_Passive
A given package is used to represent shared memory in a distributed system. See E.2.1.
54/3
Size (object)
Size in bits of an object. See 13.3.
55/3
Size (subtype)
Size in bits of a subtype. See 13.3.
56/3
Small
Scale factor for a fixed point type. See 3.5.10.
56.1/5
Stable_Properties
A list of functions describing characteristics that usually are unchanged by primitive operations of the type or an individual primitive subprogram. See 7.3.4.
56.2/5
Stable_Properties'Class
A list of functions describing characteristics that usually are unchanged by primitive operations of a class of types or a primitive subprogram for such a class. See 7.3.4.
56.3/5
Static
Specifies that an associated expression function can be used in static expressions. See 6.8.
57/5
Static_Predicate
Condition that will hold true for objects of a given subtype; the subtype may be static. See 3.2.4.
58/3
Storage_Pool
Pool of memory from which new will allocate for a given access type. See 13.11.
59/3
Storage_Size (access)
Sets memory size for allocations for an access type. See 13.11.
60/3
Storage_Size (task)
Size in storage elements reserved for a task type or single task object. See 13.3.
61/3
Stream_Size
Size in bits used to represent elementary objects in a stream. See 13.13.2.
61.1/5
String_Literal
Defines a function to implement user-defined string literals. See 4.2.1.
62/5
Synchronization
Defines whether a given primitive operation of a synchronized interface will be implemented by an entry or protected procedure. See 9.5.
63/3
Type_Invariant
A condition that will hold true for all objects of a type. See 7.3.2.
64/3
Type_Invariant'Class
A condition that will hold true for all objects in a class of types. See 7.3.2.
65/3
Unchecked_Union
Type is used to interface to a C union type. See B.3.3.
65.1/5
Use_Formal
Generic formal parameters used in the implementation of an entity. See H.7.1.
66/3
Variable_Indexing
Defines function(s) to implement user-defined indexed_components. See 4.1.6.
67/3
Volatile
Declare that a type, object, or component is volatile. See C.6.
68/3
Volatile_Components
Declare that the components of an array type or object are volatile. See C.6.
69/3
Write
Procedure to write a value to a stream for a given type. See 13.13.2.
69.1/4
Write'Class
Procedure to write a value to a stream for a the class-wide type associated with a given type. See 13.13.2.
69.2/5
Yield
Ensures that a callable entity includes a task dispatching point. See D.2.1.

Ada 2005 and 2012 Editions sponsored in part by Ada-Europe