Implement StringArrayForEach in terms of ArrayForEach instead of duplicating it.

main
Daniel Lundqvist 3 weeks ago
parent 6b3903e783
commit 6002ea65bc
  1. 2
      containers/stringarray.c
  2. 3
      containers/stringarray.h

@ -32,7 +32,7 @@ VOID StringArrayFree(StringArray array, BOOL freeStrings)
{
if( freeStrings )
{
StringArrayForEach(array, FreeVec(aString););
StringArrayForEach(array, FreeVec((STRPTR)aString););
}
DeleteArray(array);
}

@ -14,7 +14,6 @@ CONST_STRPTR* StringArrayValues(StringArray array);
STRPTR StringArrayJoined(StringArray array, BYTE linkCharacter);
STRPTR StringArrayJoinedParts(StringArray array, BYTE linkCharacter, ULONG startIndex, ULONG maxParts);
#define StringArrayForEach(array, block) do {STRPTR *afe_123_p = (*(STRPTR **)array); STRPTR aString = *afe_123_p; int afe_123_c = (((ULONG *)array)[1]);\
for (; afe_123_c--; aString = *(++afe_123_p)) block} while (0);
#define StringArrayForEach(array, block) ArrayForEach(CONST_STRPTR, aString, array, block)
#endif
Loading…
Cancel
Save