#ifndef _mailbuf_h_
#define _mailbuf_h_

#include "wb_include.h"

typedef struct _MBuf_struct_ MailBuffer;

#define AlMB_esc_rdstring(a, b)    AlMB_rdstring(a, b)  /* dummy out for now */

/****************************************************************/

#ifdef __STDC__

extern MailBuffer *AlMB_create();
extern MailBuffer *MBcreate_from_file(char *);
extern void AlMB_destroy(MailBuffer *);
extern void AlMB_clearbuf(MailBuffer *);
extern MailBuffer *AlMB_replace_buffer(MailBuffer, char *);
extern int  AlMB_write_to_file(FILE *, MailBuffer *);
extern void AlMB_beginfield(MailBuffer *);
extern void AlMB_endfield(MailBuffer *);
extern void AlMB_prstring(MailBuffer *, char *);
extern void AlMB_printeger(MailBuffer *, int);
/* extern void AlMB_esc_prstring(MailBuffer *, char *, char); */

extern int AlMB_peekch(MailBuffer *);
extern int AlMB_getch(MailBuffer *);
extern char *AlMB_read_nchars(MailBuffer *, unsigned int);
extern char *AlMB_rdstring(MailBuffer *, char);
/* extern char *AlMB_esc_rdstring(MailBuffer *, char); */
extern char *AlMB_rdvalue_string(MailBuffer *);
extern int AlMB_rdinteger(MailBuffer *, int *) /* returns 1 if found, else 0 */
extern int AlMB_index(MailBuffer *, char);        /* returns -1 if not found */

#else

extern MailBuffer *AlMB_create();
extern MailBuffer *MBcreate_from_file();
extern void AlMB_destroy();
extern void AlMB_clearbuf();
extern MailBuffer *AlMB_replace_buffer();
extern int  AlMB_write_to_file();
extern void AlMB_beginfield();
extern void AlMB_endfield();
extern void AlMB_prstring();
extern char *AlMB_rdvalue_string();
extern void AlMB_printeger();
extern void AlMB_presc_string();

extern int AlMB_peekch();
extern int AlMB_getch();
extern char *AlMB_read_nchars();
extern char *AlMB_rdstring();
/* extern char *AlMB_esc_rdstring(); */
extern int AlMB_rdinteger();   /* returns 1 if found, else 0 */
extern int AlMB_index();       /* returns -1 if not found */

#endif

/****************************************************************/
#endif   /* end of ifndef _mailbuf_h_  :: DO NOT WRITE BELOW THIS LINE. */
