Product Documentation
Cadence SKILL IDE User Guide
Product Version IC23.1, August 2023

Customer Data

You can add your own internal functions to the database by copying your information to the directory where Cadence-supplied information is installed. Your subdirectory name will appear as a choice in the Searching cyclic field, in alphabetical order, with spaces in place of underscores. The word Only appears after the subdirectory name.

For example, if you add your functions to

your_install_dir/local/finder/SKILL/Your_APIs/your.fnd

the following string appears in the Searching cyclic field:

Your APIs Only

Specifying Additional Finder Data Directories

You can use the CDS_FINDER_PATH environment variable to specify additional directories for Finder database files. After the Finder loads data from

your_install_dir/doc/finder/language/functionArea/*.fnd

it then loads data from a colon-separated list of one or more directories you specify using this environment variable. The path or paths you specify can be a combination of absolute and relative paths.

For example:

setenv CDS_FINDER_PATH .:/home/myFinder/db:../../projectFinderFiles

The program will look for your Finder database files (*.fnd) two directory levels below the paths you specify (corresponding to language/functionArea/*.fnd). Cadence strongly recommends that the additional directories for Finder database files follow the naming conventions outlined for Cadence data.

For example, if you specify

setenv CDS_FINDER_PATH /home/myFinder/db

the Finder database files must be located in a directory path such as

/home/myFinder/db/SKILL/myFunctionArea/

Data Format

The Finder requires the following three-string format for each unique entry in the *.fnd files:

("functionName"
"syntaxString"
"AbstractText.")

For example:

("abs"
"abs( n_number ) => n_result"
"Returns the absolute value of a floating-point number or integer.")

If you have more than one function that performs the same task, you can put them together as follows:

("functionName1, functionName2, …"
"syntaxString1"
"syntaxString2"

"AbstractText.")

For example:

("sh, shell"
"sh( [t_command] ) => t/nil
shell( [t_command] ) => t/nil"
"Starts the UNIX Bourne shell sh as a child process to execute a command string."

Related Topics

Cadence Data


Return to top
 ⠀
X