Hiding and exporting

The following procedures can be used in two ways. First to provide a clearer indication of visibility than is given by the capitalization convention (which exists partly to support old style m3makefiles). Second, to change the visibility of imported components. Generally, it's much better to convince the owners of the exporting package to give their sources the correct visibility rather than overriding their initial decision.

hide_interface(X) sets the visibility of interface X.i3 to hidden.

export_interface(X) sets the visibility of interface X.i3 to visible.

There are also variants that hide or export programs and generics, hide_program, hide_generic_interface, hide_generic_implementation, export_program, export_generic_interface, and export_generic_implementation.

Hidden program are not copied to the /bin directory, exported ones are.