K.1 Language-Defined Aspects
danger
This Reference Manual output has not been verified, and may contain omissions or errors. Report any problems on the tracking issue
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
.
Address
- Machine address of an entity. See 13.3.
Aggregate- Mechanism to define user-defined aggregates. See 4.3.5.
Alignment (object)- Alignment of an object. See 13.3.
Alignment (subtype)- Alignment of a subtype. See 13.3.
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.
Allows_Exit- An indication of whether a subprogram will operate correctly for arbitrary transfers of control. See 5.5.3.
Asynchronous- Remote procedure calls are asynchronous; the caller continues without waiting for the call to return. See E.4.1.
Atomic- Declare that a type, object, or component is atomic. See C.6.
Atomic_Components- Declare that the components of an array type or object are atomic. See C.6.
Attach_Handler- Protected procedure is attached to an interrupt. See C.3.1.
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 anaspect_specification
. See 13.4. 12/3
Component_Size- Size in bits of a component of an array type. See 13.3.
Constant_Indexing- Defines function(s) to implement user-defined
indexed_component
s. See 4.1.6. 14/3
Convention- Calling convention or other convention used for interfacing to other languages. See B.1.
CPU- Processor on which a given task, or calling task for a protected operation, should run. See D.16.
Default_Component_Value- Default value for the components of an array-of-scalar subtype. See 3.6.
Default_Initial_Condition- A condition that will hold true after the default initialization of an object. See 7.3.3.
Default_Iterator- Default iterator to be used in for loops. See 5.5.1.
Default_Storage_Pool- Default storage pool for a generic instance. See 13.11.3.
Default_Value- Default value for a scalar subtype. See 3.5.
Discard_Names- Requests a reduction in storage for names associated with an entity. See C.5.
Dispatching- Generic formal parameters used in the implementation of an entity. See H.7.1.
Dispatching_Domain- Domain (group of processors) on which a given task should run. See D.16.1.
Dynamic_Predicate- Condition that will hold true for objects of a given subtype; the subtype is not static. See 3.2.4.
Elaborate_Body- A given package will have a body, and that body is elaborated immediately after the declaration. See 10.2.1.
Exclusive_Functions- Specifies mutual exclusion behavior of protected functions in a protected type. See 9.5.1.
Export- Entity is exported to another language. See B.1.
External_Name- Name used to identify an imported or exported entity. See B.1.
External_Tag- Unique identifier for a tagged type in streams. See 13.3.
Full_Access_Only- Declare that a volatile type, object, or component is full access. See C.6.
Global- Global object usage contract. See 6.1.2.
Global'Class- Global object usage contract inherited on derivation. See 6.1.2.
Implicit_Dereference- Mechanism for user-defined implicit .all. See 4.1.5.
Import- Entity is imported from another language. See B.1.
Independent- Declare that a type, object, or component is independently addressable. See C.6.
Independent_Components- Declare that the components of an array or record type, or an array object, are independently addressable. See C.6.
Inline- For efficiency, Inline calls are requested for a subprogram. See 6.3.2.
Input- Function to read a value from a stream for a given type, including any bounds and discriminants. See 13.13.2.
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.
Integer_Literal- Defines a function to implement user-defined integer literals. See 4.2.1.
Interrupt_Handler- Protected procedure may be attached to interrupts. See C.3.1.
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.
Iterator_Element- Element type to be used for user-defined iterators. See 5.5.1.
Iterator_View- An alternative type to used for container element iterators. See 5.5.1.
Layout (record)- Layout of record components. Specified by a
record_representation_clause
, not by anaspect_specification
. See 13.5.1. 36/3
Link_Name- Linker symbol used to identify an imported or exported entity. See B.1.
Machine_Radix- Radix (2 or 10) that is used to represent a decimal fixed point type. See F.1.
Max_Entry_Queue_Length- The maximum entry queue length for a task type, protected type, or entry. See D.4.
No_Controlled_Parts- A specification that a type and its descendants do not have controlled parts. See H.4.1.
No_Return- A subprogram will not return normally. See 6.5.1.
Nonblocking- Specifies that an associated subprogram does not block. See 9.5.
Output- Procedure to write a value to a stream for a given type, including any bounds and discriminants. See 13.13.2.
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.
Pack- Minimize storage when laying out records and arrays. See 13.2.
Parallel_Calls- Specifies whether a given subprogram is expected to be called in parallel. See 9.10.1.
Parallel_Iterator- An indication of whether a subprogram may use multiple threads of control to invoke a loop body procedure. See 5.5.3.
Post- Postcondition; a condition that will hold true after a call. See 6.1.1.
Post'Class- Postcondition that applies to corresponding subprograms of descendant types . See 6.1.1.
Pre- Precondition; a condition that is expected to hold true before a call. See 6.1.1.
Pre'Class- Precondition that applies to corresponding subprograms of descendant types . See 6.1.1.
Predicate_Failure- Action to be performed when a predicate check fails. See 3.2.4.
Preelaborable_Initialization- Declares that a type has preelaborable initialization. See 10.2.1.
Preelaborate- Code execution during elaboration is avoided for a given package. See 10.2.1.
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.
Pure- Side effects are avoided in the subprograms of a given package. See 10.2.1.
Put_Image- Procedure to define the image of a given type. See 4.10.
Read- Procedure to read a value from a stream for a given type. See 13.13.2.
Read'Class- Procedure to read a value from a stream for the class-wide type associated with a given type. See 13.13.2.
Real_Literal- Defines a function or functions to implement user-defined real literals. See 4.2.1.
Record layout- See Layout. See 13.5.1.
Relative_Deadline- Task or protected type parameter used in Earliest Deadline First Dispatching. See D.2.6.
Remote_Call_Interface- Subprograms in a given package may be used in remote procedure calls. See E.2.3.
Remote_Types- Types in a given package may be used in remote procedure calls. See E.2.2.
Shared_Passive- A given package is used to represent shared memory in a distributed system. See E.2.1.
Size (object)- Size in bits of an object. See 13.3.
Size (subtype)- Size in bits of a subtype. See 13.3.
Small- Scale factor for a fixed point type. See 3.5.10.
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.
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.
Static- Specifies that an associated expression function can be used in static expressions. See 6.8.
Static_Predicate- Condition that will hold true for objects of a given subtype; the subtype may be static. See 3.2.4.
Storage_Pool- Pool of memory from which new will allocate for a given access type. See 13.11.
Storage_Size (access)- Sets memory size for allocations for an access type. See 13.11.
Storage_Size (task)- Size in storage elements reserved for a task type or single task object. See 13.3.
Stream_Size- Size in bits used to represent elementary objects in a stream. See 13.13.2.
String_Literal- Defines a function to implement user-defined string literals. See 4.2.1.
Synchronization- Defines whether a given primitive operation of a synchronized interface will be implemented by an entry or protected procedure. See 9.5.
Type_Invariant- A condition that will hold true for all objects of a type. See 7.3.2.
Type_Invariant'Class- A condition that will hold true for all objects in a class of types. See 7.3.2.
Unchecked_Union- Type is used to interface to a C union type. See B.3.3.
Use_Formal- Generic formal parameters used in the implementation of an entity. See H.7.1.
Variable_Indexing- Defines function(s) to implement user-defined
indexed_component
s. See 4.1.6. 67/3
Volatile- Declare that a type, object, or component is volatile. See C.6.
Volatile_Components- Declare that the components of an array type or object are volatile. See C.6.
Write- Procedure to write a value to a stream for a given type. See 13.13.2.
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.
Yield- Ensures that a callable entity includes a task dispatching point. See D.2.1.