/* vstring.h
   header file for vstring.c */

   /* these routines were inspired by those in STRstring.* from the
      gopher Unix client, version 0.9.  The main reason for changing
      them at all is that the chosen data type name in the original
      routines, String, conflicts with the X Window System data
      type of the same name, but different type. */

#ifndef VSTRING_H
#define VSTRING_H


#define vStringValue(vs) (vs)->data
#define vStringLength(vs) (vs)->len

#define vStringInit(vs) {(vs)->len = 0;  (vs)->data = NULL;}


typedef struct vStringStruct {
	int	len;
	char	*data;
	} vString;

void vStringSet(
#ifdef PROTO
	vString *,	/* vs */
	char *		/* value */
#endif
);


/* some of these routines are not used in this release */

#ifdef NOT_YET

void vStringDestroy(
#ifdef PROTO
	vString *	/* vs */
#endif
);

vString *vStringNew(
);

#endif   /*  NOT_YET */
#endif   /*  VSTRING_H */
