X-Git-Url: https://git.subgeniuskitty.com/unix-history/.git/blobdiff_plain/f41e8da3abc75f6f198c03bb55d51b67cdf2cedf..93f1f3e4523d69b938cf14fe8371117415db30d0:/usr/src/include/vis.h diff --git a/usr/src/include/vis.h b/usr/src/include/vis.h index 814d8061aa..083d0d4a02 100644 --- a/usr/src/include/vis.h +++ b/usr/src/include/vis.h @@ -1,59 +1,58 @@ -/* - * Copyright (c) 1989 The Regents of the University of California. +/*- + * Copyright (c) 1990 The Regents of the University of California. * All rights reserved. * - * Redistribution and use in source and binary forms are permitted - * provided that the above copyright notice and this paragraph are - * duplicated in all such forms and that any documentation, - * advertising materials, and other materials related to such - * distribution and use acknowledge that the software was developed - * by the University of California, Berkeley. The name of the - * University may not be used to endorse or promote products derived - * from this software without specific prior written permission. - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. + * %sccs.include.redist.c% * - * @(#)vis.h 5.3 (Berkeley) %G% + * @(#)vis.h 5.9 (Berkeley) %G% */ - -/* - * vis flags - */ +#ifndef _VIS_H_ +#define _VIS_H_ /* * to select alternate encoding format */ #define VIS_OCTAL 0x01 /* use octal \ddd format */ -#define VIS_CSTYLE 0x02 /* use \[nrft...] where appropiate */ +#define VIS_CSTYLE 0x02 /* use \[nrft0..] where appropiate */ + /* - * to alter set of characters encoded - * (default is to encode all non-graphic except space, tab, and newline) + * to alter set of characters encoded (default is to encode all + * non-graphic except space, tab, and newline). */ -#define VIS_TAB 0x04 /* also encode tab */ -#define VIS_WHITE 0x08 /* also encode space, tab, and newline */ -#define VIS_SAFE 0x10 /* only encode "unsafe" characters */ +#define VIS_SP 0x04 /* also encode space */ +#define VIS_TAB 0x08 /* also encode tab */ +#define VIS_NL 0x10 /* also encode newline */ +#define VIS_WHITE (VIS_SP | VIS_TAB | VIS_NL) +#define VIS_SAFE 0x20 /* only encode "unsafe" characters */ + /* * other */ -#define VIS_NOSLASH 0x20 /* inhibit printing '\' */ -#define VIS_NEXTC 0x40 /* nextc character is valid */ +#define VIS_NOSLASH 0x40 /* inhibit printing '\' */ -extern char *vis(); +/* + * unvis return codes + */ +#define UNVIS_VALID 1 /* character valid */ +#define UNVIS_VALIDPUSH 2 /* character valid, push back passed char */ +#define UNVIS_NOCHAR 3 /* valid sequence, no character produced */ +#define UNVIS_SYNBAD -1 /* unrecognized escape sequence */ +#define UNVIS_ERROR -2 /* decoder in unknown state (unrecoverable) */ /* * unvis flags */ +#define UNVIS_END 1 /* no more characters */ -#define UNVIS_HAT 0x01 /* treat ^ as special */ -#define UNVIS_END 0x02 /* reset decode machine */ +#include -/* - * return codes - */ -#define UNVIS_NEEDMORE 0 /* not done, feed another char */ -#define UNVIS_OK 1 /* done, character ready */ -#define UNVIS_OKPUSH 2 /* done, push back passed char */ -#define UNVIS_NOCHAR 3 /* done, no character ready (hidden newline) */ -#define UNVIS_SYNBAD -1 /* unrecognized escape sequence */ +__BEGIN_DECLS +char *vis __P((char *, char, int, char)); +int strvis __P((char *, const char *, int)); +int strvisx __P((char *, const char *, size_t, int)); +int strunvis __P((char *, const char *)); +int unvis __P((char *, char, int *, int)); +__END_DECLS + +#endif /* !_VIS_H_ */