Next: , Previous: E.2.1, Up: E.2


E.2.2 Remote Types Library Units

1
A remote types library unit supports the definition of types intended for use in communication between active partitions.

Syntax

2

The form of a pragma Remote_Types is as follows:

3

  pragma Remote_Types[(library_unit_name)];
Legality Rules

4
A remote types library unit is a library unit to which the pragma Remote_Types applies. The following restrictions apply to the declaration of such a library unit:

5

6

7

8/2

9/1
An access type declared in the visible part of a remote types or remote call interface library unit is called a remote access type. Such a type shall be:

9.1/1

9.2/1

9.3/1
A type that is derived from a remote access type is also a remote access type.

10
The following restrictions apply to the use of a remote access−to−subprogram type:

11/2

12

13
The following restrictions apply to the use of a remote access−to−class−wide type:

14/2

15

16/1

17/2

     NOTES

18

 A remote types library unit need not be pure, and the types it defines may include levels of indirection implemented by using access types. User−specified Read and Write attributes (see 13.13.2) provide for sending values of such a type between active partitions, with Write marshalling the representation, and Read unmarshalling any levels of indirection.