Module declaration

A module definition satisfies the following syntax:

(48) module ::=

"module" module-name "{" module-body "}" ";"

(49) module-name ::=

identifier

(50) module-body ::=

[ idl-statements ]

(3) idl-statements ::=

{ idl-statement } idl-statement

The only effect of a module is to scope IDL identifiers. It is similar to a C++ or Java namespace; it is considered good practice to enclose your type definitions inside a module definition to prevent name clashes between components.