/* $DOC$ $NAME$ CharSwap() $CATEGORY$ CT3 string functions $ONELINER$ Swap neighbouring characters in a string $SYNTAX$ CharSwap( <[@]cString> ) -> cSwappedString $ARGUMENTS$ <[@]cString> is the string that should be processed $RETURNS$ a string where neighbour characters are swapped $DESCRIPTION$ The CharSwap() function loops through in steps of two characters and exchanges the characters from the odd and the even positions. By setting the CSetRef() switch to .T., one can omit the return value of this functin, but one must then pass by reference. $EXAMPLES$ ? CharSwap( "0123456789" ) // "1032547698" ? CharSwap( "ABCDEFGHIJK" ) // "BADCFEHGJIK" $STATUS$ Ready $COMPLIANCE$ CharSwap() is compatible with CT3's CharSwap(). $PLATFORMS$ All $FILES$ Library is hbct. $SEEALSO$ WordSwap(), CSetRef() $END$ */ /* $DOC$ $NAME$ WordSwap() $CATEGORY$ CT3 string functions $ONELINER$ Swap neighbouring double characters in a string $SYNTAX$ WordSwap( <[@]cString> [, ] ) -> cSwappedString $ARGUMENTS$ <[@]cString> is the string that should be processed [] specifies whether an additional swap should be done within the double characters Default: .F., no additional swap $RETURNS$ a string where neighbouring double characters are swapped $DESCRIPTION$ The WordSwap() function loops through in steps of four characters and exchanges the double characters from the first and second position with the one from the third and forth position. Additionally the function can perform a swap of the both char of each double character. By setting the CSetRef() switch to .T., one can omit the return value of this functin, but one must then pass by reference. $EXAMPLES$ ? WordSwap( "1234567890" ) // "3412785690" ? WordSwap( "1234567890", .T. ) // "4321876590" $STATUS$ Ready $COMPLIANCE$ WordSwap() is compatible with CT3's WordSwap(). $PLATFORMS$ All $FILES$ Library is hbct. $SEEALSO$ CharSwap(), CSetRef() $END$ */