/*
** pat_buf.h for  in 
** 
** Made by 
** Login   <vianney@epita.fr>
** 
** Started on  Wed Sep  1 06:50:09 1999 
** Last update Thu Oct 28 20:21:32 1999 
*/
#ifndef PAT_BUF_H
#define PAT_BUF_H	1

#include "pat.h"

typedef struct		s_buf_assocs_data
{
  int			ulen;
  t_assoc		*assocs;
} t_buf_assocs_data;

extern t_pat		buf_pat;
extern t_pat		bufassoc_pat;
extern t_pat		bufuntil_pat;
extern t_pat		bufstruntil_pat;

/* PROTO pat_buf.c */
/* pat_buf.c */
t_status buf_pat_name P((void *data, t_id *optional_id, char *str, int max_len));
t_status buf_pat_extract P((void *data, char *buf, int len, char *str, int max_len));
t_status buf_pat_insert P((void *data, char *buf, int len, char *value));
t_status buf_pat_off P((void *data, char *buf, int len, t_off *off_return));
t_status bufassoc_pat_name P((void *data, t_id *optional_id, char *str, int max_len));
t_status bufassoc_pat_extract P((void *data, char *buf, int len, char *str, int max_len));
t_status bufassoc_pat_insert P((void *data, char *buf, int len, char *value));
t_status bufassoc_pat_off P((void *data, char *buf, int len, t_off *off_return));
t_status bufassoc_pat_get_choices P((void *data, char *buf, int len, t_vec *vec_str, t_boolean *do_sort_return));
t_status bufuntil_pat_name P((void *data, t_id *optional_id, char *str, int max_len));
t_status bufuntil_pat_extract P((void *data, char *buf, int len, char *str, int max_len));
t_status bufuntil_pat_insert P((void *data, char *buf, int len, char *value));
t_status bufuntil_pat_off P((void *data, char *buf, int len, t_off *off_return));
t_status bufstruntil_pat_name P((void *data, t_id *optional_id, char *str, int max_len));
t_status bufstruntil_pat_extract P((void *data, char *buf, int len, char *str, int max_len));
t_status bufstruntil_pat_insert P((void *data, char *buf, int len, char *value));
t_status bufstruntil_pat_off P((void *data, char *buf, int len, t_off *off_return));
t_status bufstruntil_pat_get_field P((void *data, t_id *optional_id, char *buf, int len, char *field, char *str, int max_len));
t_status bufstruntil_pat_set_field P((void *data, t_id *optional_id, char *buf, int len, char *field, char *value));
t_status bufstruntil_pat_get_fields P((void *data, t_vec *vec_str));
t_status bufstruntil_pat_get_tmpl P((void *data, t_id *id, char *buf, int len, char *str, int max_len));
t_status bufstruntil_pat_get_field_pat P((void *data, t_id *optional_id, char *buf, int len, char *field, t_pat **pat_return, void **data_return));
#endif
