[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
 _evalRelease()
 Release all parameter references in an EVALINFO structure
------------------------------------------------------------------------------
 C Prototype

     #include "item.api"
     BOOL _evalRelease(
                        EVALINFOP evalInfoP
                      )

 Arguments

     evalInfoP is the structure already used to launch an evaluation.

 Returns

     TRUE if the operation was successful.

 Description

     During the process of launching an evaluation, the Item API creates new
     item references for each item placed in the parameter list.  After an
     _evalLaunch() call is made, you must call _evalRelease() to individually
     release all of the references.

     Warning!  It is vitally important that items be released once you no
     longer have need for them.  For each launch of a particular EVALINFO
     structure, you must call _evalRelease().  Failure to do so may cause
     a CA-Clipper stack fault or memory errors.

     Warning!  Do NOT pass this function an EVALINFO structure that
     has NOT been subject to an _evalLaunch().

 Examples

     /*
     * USERDO()
     * --------
     */

     CLIPPER userDO( void )
     {
        EVALINFO info;
        USHORT   uiParam;
        ITEM     retP;

        /* Get evaluation expression */

        if ( PCOUNT < 1 )
        {
           _ret();
           return;
        }
        else
        {
           _evalNew( &info, _itemParam( 1 ) );
        }

        /* Get parameters */

        for ( uiParam=2; uiParam <= PCOUNT; uiParam++ )
        {
           _evalPutParam( &info, _itemParam(uiParam) );
        }

        /* Launch evaluation information */

        retP = _evalLaunch( &info );

        /* Release ITEMs associated w/eval info */

        _evalRelease( &info );

        _itemReturn ( retP );
        _itemRelease( retP );

        return;
     }

 Files  Library is CLIPPER.LIB, header file is Item.api.


See Also: _evalLaunch() _evalPutParam()
This page created by ng2html v1.05, the Norton guide to HTML conversion utility. Written by Dave Pearson