Product Documentation
Virtuoso Studio Design Environment SKILL Reference
Product Version IC23.1, November 2023

ddUpdateLibList

ddUpdateLibList(
) 
=> t / nil 

Description

Establishes and re-establishes a list of libraries in virtual memory to be used by ddGetObj.

The order of libraries in the list is irrelevant; there is no search path behavior among libraries. This function retrieves the entries in a series of one or more cds.lib files to define the libraries that your tool will see. (Only the first library file needs to have the name cds.lib.)

If you use the -cdslib switch on the command line or you have called ddSetForcedLib, ddUpdateLibList checks, when it first runs, to see if you have specified a path to a cds.lib file. If so, it skips the ddGetStartup search for the cds.lib file and just starts with the one you asked for. If it cannot read the file, the system aborts the run.

If no cdslib switch was given and there is no forcedLib in effect, ddUpdateLibList loads the cds.lib file ddGetStartup finds.

The function has two triggers: PreUpdateLibList and PostUpdateLibList. The pre-trigger is called after the system analyzes the library files to be sure they are error-free and all libraries are visible.

You should register a callback function on the PreUpdateLibList trigger that will walk through all your open files. For each file ddId, call ddIsObjLibMarked to see of the object’s library is marked as having been deleted or having changed paths. If so, you can ask the users to save their work at the old path, lose their work, or abort the update. If a user chooses to abort the update, issue a warning to the log and return FALSE from the pre-trigger.

ddUpdateLibList gets locks on the cds.lib and registry while accessing them, and then releases them.

Arguments

None

Value Returned

t

The library list update was successful.

nil

The library list update failed due to either syntax errors in the cds.lib file or one of the PreUpdateLibList triggers returning nil.

Examples

ddUpdateLibList( ) => t 

Return to top
 ⠀
X