algorithms/replacecopyif.bi

Summary
algorithms/replacecopyif.bi
LicenseCopyright © 2007-2011, FreeBASIC Extended Library Development Group
Functions
ReplaceCopyIfReplaces each element in the range [//first//, //last//) that satisfies a predicate with another value //newvalue// and copies the results to the range beginning at //result//.

License

Copyright © 2007-2011, FreeBASIC Extended Library Development Group

Distributed under the FreeBASIC Extended Library Group license.  See accompanying file LICENSE.txt or copy at http://code.google.com/p/fb-extended-lib/wiki/License

Functions

ReplaceCopyIf

declare function ReplaceCopyIf overload (
   byval first as fbext_TypeName(T_) ptr,
   byval last as fbext_TypeName(T_) ptr,
   byval result as fbext_TypeName(T_) ptr,
   byval pred as function ( byref as const fbext_TypeName(T_) ) as bool,
   byref newvalue as const fbext_TypeName(T_)
) as fbext_TypeName(T_) ptr

Replaces each element in the range [//first//, //last//) that satisfies a predicate with another value //newvalue// and copies the results to the range beginning at //result//.

Parameters

firstA pointer to the first element in the range.
lastA pointer to one-past the last element in the range.
resultA pointer to the first element in the range that will hold the results.
predThe predicate to test the elements.
newvalueThe value to replace with.

Returns

Returns the last element copied.

declare function ReplaceCopyIf overload (
   byval first as fbext_TypeName(T_) ptr,
   byval last as fbext_TypeName(T_) ptr,
   byval result as fbext_TypeName(T_) ptr,
   byval pred as function ( byref as const fbext_TypeName(T_) ) as bool,
   byref newvalue as const fbext_TypeName(T_)
) as fbext_TypeName(T_) ptr
Replaces each element in the range [//first//, //last//) that satisfies a predicate with another value //newvalue// and copies the results to the range beginning at //result//.