#ifndef __NLL_STRING_H_INCLUDED__
#define __NLL_STRING_H_INCLUDED__

struct string {
  struct string *next;
  char *s;
  int length;
  int size;
};

int string_alloc_num(void);
int string_pool_num(void);
int string_check(void);
int string_alloc(string_t *stringp);
int string_free(string_t string);
int string_del(string_t string);
int string_init(void);
int string_done(void);
int string_set(string_t string, const char *s, int length);
char *string_buffer(void);
int string_buffer_size(void);
int string_dump_string(FILE *fp, string_t string);
int string_dump(FILE *fp, string_t string);

#endif
