argz.h 1.3 KB

123456789101112131415161718192021222324252627282930313233
  1. /* Copyright (C) 2002 by Red Hat, Incorporated. All rights reserved.
  2. *
  3. * Permission to use, copy, modify, and distribute this software
  4. * is freely granted, provided that this notice is preserved.
  5. */
  6. #ifndef _ARGZ_H_
  7. #define _ARGZ_H_
  8. #include <errno.h>
  9. #include <sys/types.h>
  10. #include "_ansi.h"
  11. _BEGIN_STD_C
  12. /* The newlib implementation of these functions assumes that sizeof(char) == 1. */
  13. error_t argz_create (char *const argv[], char **argz, size_t *argz_len);
  14. error_t argz_create_sep (const char *string, int sep, char **argz, size_t *argz_len);
  15. size_t argz_count (const char *argz, size_t argz_len);
  16. void argz_extract (char *argz, size_t argz_len, char **argv);
  17. void argz_stringify (char *argz, size_t argz_len, int sep);
  18. error_t argz_add (char **argz, size_t *argz_len, const char *str);
  19. error_t argz_add_sep (char **argz, size_t *argz_len, const char *str, int sep);
  20. error_t argz_append (char **argz, size_t *argz_len, const char *buf, size_t buf_len);
  21. error_t argz_delete (char **argz, size_t *argz_len, char *entry);
  22. error_t argz_insert (char **argz, size_t *argz_len, char *before, const char *entry);
  23. char * argz_next (char *argz, size_t argz_len, const char *entry);
  24. error_t argz_replace (char **argz, size_t *argz_len, const char *str, const char *with, unsigned *replace_count);
  25. _END_STD_C
  26. #endif /* _ARGZ_H_ */