OSF DCE Application Development Guide--Core Components
OSF DCE Application Development Guide—Core Components
17.16 IDL Grammar Synopsis
This section summarizes IDL syntax, in extended Backus-Naur Format (BNF) notation.
<interface> ::= <interface_header> "{" <interface_body> "}"
<interface_header> ::=
"[" <interface_attributes> "]" "interface" <identifier>
<interface_attributes> ::=
<interface_attribute> [ "," <interface_attribute> ] ...
<interface_attribute> ::= "uuid" "(" <uuid_rep> ")"
| "version" "(" <major> [ "." <minor> ] ")"
| "endpoint" "(" <endpoint_spec> [ "," <endpoint_spec> ] ... ")"
| "pointer_default" "(" <pointer_attribute> ")"
| "local"
| "exceptions" "(" <excep_name> ["," <excep_name>] ... ")"
<excep_name> ::= <Identifier>
<major> ::= <integer>
<minor> ::= <integer>
<endpoint_spec> ::=
""" <family_string> ":" "[" <endpoint_string> "]" """
<family_string> ::= <identifier>
<endpoint_string> ::= <identifier>
<interface_body> ::= [ <import> ] ... [ <export> ] ...
<export> ::= <const_declaration> ";"
| <type_declaration> ";"
| <op_declaration> ";"
<import> ::= import <import_files> ";"
<import_files> ::= <filename> [ "," <filename> ] ... ";"
<filename> ::= """ <character> ... """
<const_declaration> ::=
"const" <const_type_spec> <identifier> "=" <const_exp>
<const_type_spec> ::=
<integer_type> | "char" | "char" "*" | "boolean" | "void" "*"
<const_exp> ::=
<integer_const_exp> | <character_const> | <string_const>
17 − 68 Tandem Computers Incorporated 124245