OSF DCE Application Development Guide--Core Components
Interface Definition Language
<xmit_type> ::= <simple_type_spec>
<field_attribute> ::= "first_is" "(" <attr_var_list> ")"
| "last_is" "(" <attr_var_list> ")"
| "length_is" "(" <attr_var_list> ")"
| "max_is" "(" <attr_var_list> ")"
| "min_is" "(" <attr_var_list> ")"
| "size_is" "(" <attr_var_list> ")"
| <usage_attribute>
| <union_instance_switch_attr>
| "ignore"
| <ptr_attr>
<attr_var_list> ::= <attr_var> [ "," <attr_var> ] ...
<attr_var> ::= [ ["*"]<identifier> ]
<ptr_declarator> ::= "*"<identifier>
<ptr_attr> ::= "ref"
| "unique"
| "full"
<op_declarator> ::= [ <operation_attributes> ]
<simple_type_spec> <identifier> <parameter_declarators>
<operation_attributes> ::= "[" <operation_attribute>
[ "," <operation_attribute> ] ... "]"
<operation_attribute> ::= "idempotent"
| "broadcast"
| "maybe"
| "reflect_deletions"
| <usage_attribute>
| <ptr_attr>
<param_declarators> ::= "(" "void" ")"
| "(" [ <param_declarator> [ "," <param_declarator> ] ... ] ")"
<param_declarator> ::= <param_attributes> <type_spec> <declarator>
<param_attributes> ::=
"[" <param_attribute> [ "," <param_attribute> ] ... "]"
<param_attribute> ::= <directional_attribute>
| <field_attribute>
<directional_attribute> ::= "in" [ "(" "shape" ")" ]
| "out" [ "(" "shape" ")" ]
<function_ptr_declarator> ::= <simple_type_spec>
"(" "*"<identifier> ")" <param_declarators>
<predefined_type_spec> ::= "error_status_t"
| <international_character_type>
124245 Tandem Computers Incorporated 17− 73