home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 5 Edit / 05-Edit.zip / par150o2.zip / charset.h < prev    next >
C/C++ Source or Header  |  1996-01-21  |  2KB  |  70 lines

  1. /*********************/
  2. /* charset.h         */
  3. /* for Par 1.50      */
  4. /* Copyright 1996 by */
  5. /* Adam M. Costello  */
  6. /*********************/
  7.  
  8. /* This is ANSI C code. */
  9.  
  10.  
  11. /* Note: Those functions declared here which do not use errmsg    */
  12. /* always succeed, provided that they are passed valid arguments. */
  13.  
  14.  
  15. #include "errmsg.h"
  16.  
  17.  
  18. typedef struct charset charset;
  19.  
  20.  
  21. charset *parsecharset(const char *str, errmsg_t errmsg);
  22.  
  23.   /* parsecharset(str,errmsg) returns the set of characters defined by */
  24.   /* str using charset syntax (see par.doc).  Returns NULL on failure. */
  25.  
  26.  
  27. void freecharset(charset *cset);
  28.  
  29.   /* freecharset(cset) frees any memory associated with */
  30.   /* *cset.  cset may not be used after this call.      */
  31.  
  32.  
  33. int csmember(char c, const charset *cset);
  34.  
  35.   /* csmember(c,cset) returns 1 if c is a member of *cset, 0 otherwise. */
  36.  
  37.  
  38. charset *csunion(const charset *cset1, const charset *cset2, errmsg_t errmsg);
  39.  
  40.   /* csunion(cset1,cset2) returns a pointer to the   */
  41.   /* union of *cset1 and *cset2, or NULL on failure. */
  42.  
  43.  
  44. charset *csdiff(const charset *cset1, const charset *cset2, errmsg_t errmsg);
  45.  
  46.   /* csdiff(cset1,cset2) returns a pointer to the set */
  47.   /* difference *cset1 - *cset2 , or NULL on failure. */
  48.  
  49.  
  50. void csadd(charset *cset1, const charset *cset2, errmsg_t errmsg);
  51.  
  52.   /* csadd(cset1,cset2) adds the members of *cset2  */
  53.   /* to *cset1.  On failure, *cset1 is not changed. */
  54.  
  55.  
  56. void csremove(charset *cset1, const charset *cset2, errmsg_t errmsg);
  57.  
  58.   /* csremove(cset1,cset2) removes the members of *cset2 */
  59.   /* from *cset1.  On failure, *cset1 is not changed.    */
  60.  
  61.  
  62. charset *cscopy(const charset *cset, errmsg_t errmsg);
  63.  
  64.   /* cscopy(cset) returns a copy of cset, or NULL on failure. */
  65.  
  66.  
  67. void csswap(charset *cset1, charset *cset2);
  68.  
  69.   /* csswap(cset1,cset2) swaps the contents of *cset1 and *cset2. */
  70.