Methods of Providing Objects

Libraries provide export objects in one of three ways: directly, indirectly, and dynamically. The declaration of each export object in the library program specifies which of these provision methods is used. The method chosen depends on whether the export object originates in the library program, or if the library itself imports the object from another library.

Additionally, a series of indirect provisions can result in an object being ultimately provided by the very library that is importing it. This type of provision is said to be circular.