/** * Returns a pblLinkedList with a shallow copy of this collection instance. * * The elements themselves are not copied. * * This method has a memory and time complexity of O(N), * with N being the number of elements in the collection. * * @return PblList * retPtr != NULL: A pointer to the new list. * @return PblList * retPtr == NULL: An error, see pbl_errno: * * <BR>PBL_ERROR_OUT_OF_MEMORY - Out of memory. * <BR>PBL_ERROR_PARAM_COLLECTION - The collection cannot be iterated. * <BR>PBL_ERROR_CONCURRENT_MODIFICATION - The collection was modified concurrently. */ PblList * pblCollectionConvertToLinkedList( PblCollection * collection /** The collection to convert */ ) { PblList * list = pblListNewLinkedList(); if( !list ) { return NULL; } list->compare = collection->compare; if( pblListAddAll( list, collection ) < 0 ) { pblListFree( list ); return NULL; } return list; }
// Destructors void DEReceiver_New_Free(struct DEReceiver* r) { if (r) { pblListFree(r->_tokens); free(r); } }