C API Functions

prevnext

udbListReferenceFilter


Description

Filter the specified list of references, using the reference kinds and/or the entity kinds specified, and return a new allocated array of references. If unique is specified, the newrefs array will only contain the first reference for each unique entity.

Call udbListReferenceFree() to free this list.

Syntax

 #include "udb/udb.h"
 void  udbListReferenceFilter(UdbReference *refs, 
                             UdbKindList refkinds,
                             UdbKindList entkinds, 
                             int unique,
                             UdbReference **newrefs, 
                             int *items)

Arguments

Argument description
UdbReference *refs Original list of references; non-allocated.
UdbKindList refkinds If not NULL, reference kinds to filter; allocated.
UdbKindList entkinds If not NULL, entity kinds to filter; allocated.
int unique If specified, only one reference per unique entity is returned
UdbReference **newrefs Return allocated array of references.
int *items If not NULL, return size of newrefs array.

Return Values

There are no function return values.

Example Usage

This example filters an existing list of reference to include only those references where there is an active callby or useby reference, or where the entity is declared or defined.

 udbListReferenceFilter(refs,
        udbKindParse("callby ~inactive,declarein,definein, 
useby ~inactive"),
         NULL, 0, &xrefs, &items);

See Also

udbListReference to get list of references for a specified entity.

udbListReferenceFree to free the list of references.

prevnext


Scientific Toolworks, Inc.
http://www.scitools.com
Voice: (802) 763-2995
Fax: (802) 763-3066
support@scitools.com
sales@scitools.com