1 /*********************************************************************** 2 * * 3 * This software is part of the ast package * 4 * Copyright (c) 1985-2011 AT&T Intellectual Property * 5 * and is licensed under the * 6 * Eclipse Public License, Version 1.0 * 7 * by AT&T Intellectual Property * 8 * * 9 * A copy of the License is available at * 10 * http://www.eclipse.org/org/documents/epl-v10.html * 11 * (with md5 checksum b35adb5213ca9657e911e9befb180842) * 12 * * 13 * Information and Software Systems Research * 14 * AT&T Research * 15 * Florham Park NJ * 16 * * 17 * Glenn Fowler <gsf@research.att.com> * 18 * David Korn <dgk@research.att.com> * 19 * Phong Vo <kpv@research.att.com> * 20 * * 21 ***********************************************************************/ 22 #ifndef _SFSTR_H 23 #define _SFSTR_H 1 24 25 #include <ast.h> 26 27 typedef struct Sfstr_s 28 { 29 char* beg; 30 char* nxt; 31 char* end; 32 } Sfstr_t; 33 34 #undef sfclose 35 #undef sfprintf 36 #undef sfprints 37 #undef sfputc 38 #undef sfputr 39 #undef sfstrbase 40 #undef sfstropen 41 #undef sfstrseek 42 #undef sfstrset 43 #undef sfstrtell 44 #undef sfstruse 45 #undef sfwrite 46 47 extern int sfclose(Sfio_t*); 48 extern int sfprintf(Sfio_t*, const char*, ...); 49 extern char* sfprints(const char*, ...); 50 extern int sfputc(Sfio_t*, int); 51 extern int sfputr(Sfio_t*, const char*, int); 52 extern char* sfstrbase(Sfio_t*); 53 extern Sfio_t* sfstropen(void); 54 extern char* sfstrseek(Sfio_t*, int, int); 55 extern char* sfstrset(Sfio_t*, int); 56 extern int sfstrtell(Sfio_t*); 57 extern char* sfstruse(Sfio_t*); 58 extern int sfwrite(Sfio_t*, void*, int); 59 60 #endif 61