explicit_handle
[explicit_handle]
{ ...}
Example
/* ACF File */
[explicit_handle]
{
};
Remarks
The explicit_handle
attribute specifies that each procedure has, as its first parameter, a
primitive handle, such as a handle_t type. This is the case even if the
IDL file does not contain the handle in its parameter list. The prototypes
emitted to the header file and stub routines contain the additional parameter,
and that parameter is used as the handle for directing the remote call.
The explicit_handle
attribute affects both remote procedures and serialization procedures. For type
serialization, the support routines are generated with the initial parameter as
an explicit (serialization) handle. If the explicit_handle attribute is
not used, the application can still specify that an operation have an explicit
handle (binding or serialization) directing the call. To do this, a prototype
with an argument containing a handle type is supplied to the IDL file. Note
that in default mode, an argument that does not appear first can also be used
as a handle directing the call. Therefore, while the explicit_handle
attribute is a way of giving the IDL prototype a primitive explicit_handle
attribute, it does not necessarily require a change to the IDL file. In /osf
mode only the first argument can be used as an explicit handle type.
The explicit_handle
attribute can be used as either an interface attribute or an operation
attribute. As an interface attribute, it affects all the operations in the
interface and all the types that require serialization support. If, however, it
is used as an operation attribute, it affects only that particular operation.
See Also