Print this page
Address Robert's feedback


  28 
  29 typedef struct str_s {
  30         char            *str_s;
  31         sysdem_ops_t    *str_ops;
  32         size_t          str_len;
  33         size_t          str_size;
  34 } str_t;
  35 
  36 typedef struct str_pair_s {
  37         str_t   strp_l;
  38         str_t   strp_r;
  39 } str_pair_t;
  40 
  41 void str_init(str_t *restrict, sysdem_ops_t *);
  42 void str_fini(str_t *);
  43 size_t str_length(const str_t *);
  44 boolean_t str_copy(const str_t *, str_t *);
  45 void str_set(str_t *, const char *, size_t);
  46 boolean_t str_append(str_t *, const char *, size_t);
  47 boolean_t str_append_str(str_t *, const str_t *);
  48 boolean_t str_append_c(str_t *, int);
  49 boolean_t str_insert(str_t *, size_t, const char *, size_t);
  50 boolean_t str_insert_str(str_t *, size_t, const str_t *);
  51 boolean_t str_erase(str_t *, size_t, size_t);
  52 
  53 str_pair_t *str_pair_init(str_pair_t *, sysdem_ops_t *);
  54 void str_pair_fini(str_pair_t *);
  55 boolean_t str_pair_merge(str_pair_t *);
  56 boolean_t str_pair_copy(const str_pair_t *, str_pair_t *);
  57 size_t str_pair_len(const str_pair_t *);
  58 
  59 #ifdef __cplusplus
  60 }
  61 #endif
  62 
  63 #endif /* _STR_H */


  28 
  29 typedef struct str_s {
  30         char            *str_s;
  31         sysdem_ops_t    *str_ops;
  32         size_t          str_len;
  33         size_t          str_size;
  34 } str_t;
  35 
  36 typedef struct str_pair_s {
  37         str_t   strp_l;
  38         str_t   strp_r;
  39 } str_pair_t;
  40 
  41 void str_init(str_t *restrict, sysdem_ops_t *);
  42 void str_fini(str_t *);
  43 size_t str_length(const str_t *);
  44 boolean_t str_copy(const str_t *, str_t *);
  45 void str_set(str_t *, const char *, size_t);
  46 boolean_t str_append(str_t *, const char *, size_t);
  47 boolean_t str_append_str(str_t *, const str_t *);
  48 boolean_t str_append_c(str_t *, char);
  49 boolean_t str_insert(str_t *, size_t, const char *, size_t);
  50 boolean_t str_insert_str(str_t *, size_t, const str_t *);
  51 boolean_t str_erase(str_t *, size_t, size_t);
  52 
  53 str_pair_t *str_pair_init(str_pair_t *, sysdem_ops_t *);
  54 void str_pair_fini(str_pair_t *);
  55 boolean_t str_pair_merge(str_pair_t *);
  56 boolean_t str_pair_copy(const str_pair_t *, str_pair_t *);
  57 size_t str_pair_len(const str_pair_t *);
  58 
  59 #ifdef __cplusplus
  60 }
  61 #endif
  62 
  63 #endif /* _STR_H */