gtpc2mfjC/C++ Language Support User's Guide

TO2_more-Test for More Elements to Process

This function tests the cursor position to determine if there are more elements in the collection and then returns TO2_IS_FALSE when the cursor is pointing past the last element in the collection. The TO2_more function is the reverse of the TO2_atEnd function.

Format

#include <c$to2.h>
BOOL TO2_more (const TO2_PID_PTR cursorPidPtr,
                     TO2_ENV_PTR env_ptr);

cursorPidPtr
The pointer to the cursor persistent identifier (PID) created by one of the TPF collection support (TPFCS) create cursor application programming interfaces (APIs).

env_ptr
The pointer to the environment as returned by the TO2_createEnv function.

Normal Return

TO2_IS_FALSE
There are no more elements to process (the cursor is not pointing to an element before the last element).

TO2_IS_TRUE
There are more elements to process (the cursor is pointing to an element before the last element).

Error Return

An error return is indicated by a zero. When zero is returned, use the TO2_getErrorCode function to determine the specific error code. This function must also be used with a TO2_IS_FALSE return code to distinguish this return from an error return indication. If the error code returned by TO2_getErrorCode is TO2_IS_FALSE (0), this is the actual return code by the function. Otherwise, an error is indicated. For more information, see Error Handling.

The following error codes are common for this function:

TO2_ERROR_CURSOR

TO2_ERROR_ENV

TO2_ERROR_METHOD

TO2_ERROR_PID

TO2_ERROR_ZERO_PID

Programming Considerations

Examples

The following tests to see if there are subsequent elements to process after the element that the cursor is currently pointing to.

#include <c$to2.h>                /* Needed for TO2 API Functions     */
#include <stdio.h>                /* APIs for standard I/O functions  */
 
TO2_PID             cursor;
TO2_ENV_PTR         env_ptr;
TO2_ERR_CODE        err_code;     /* TO2 error code value             */
TO2_ERR_TEXT_PTR    err_text_ptr; /* TO2 error code text pointer      */

  ·
  ·
  ·
/**********************************************************************/ /* Are there more elements after the current one? */ /**********************************************************************/ if (TO2_more(&cursor, env_ptr)) == TO2_ERROR) { err_code = TO2_getErrorCode(env_ptr); if (err_code ! = TO2_IS_FALSE) { printf("TO2_more failed!\n"); process_error(env_ptr); } else printf("There are no more elements after the current element.\n"); } else printf("There are more elements after the current element.\n");

Related Information

TO2_atEnd-Test If the Cursor Is at the End of the Collection.