00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #pragma once
00024 #ifndef SEXP_OUTPUT_H
00025 #define SEXP_OUTPUT_H
00026
00027 #include <stdio.h>
00028 #include <unistd.h>
00029 #include <seap-debug.h>
00030 #include <sexp-types.h>
00031
00032 #ifdef __cplusplus
00033 extern "C" {
00034 #endif
00035
00036 typedef struct SEXP_ostate SEXP_ostate_t;
00037
00038 size_t SEXP_fprintfa (FILE *fp, const SEXP_t *s_exp);
00039
00040 #if defined(STRBUF_H)
00041 int SEXP_sbprintf_t (SEXP_t *s_exp, strbuf_t *sb);
00042 #endif
00043
00044 #if 0
00045
00046 int SEXP_printf (SEXP_format_t fmt, SEXP_t *sexp);
00047 int SEXP_fprintf (FILE *fp, SEXP_format_t fmt, SEXP_t *sexp);
00048 int SEXP_dprintf (int fd, SEXP_format_t fmt, SEXP_t *sexp);
00049 int SEXP_sprintf (char *str, SEXP_format_t fmt, SEXP_t *sexp);
00050 int SEXP_snprintf (char *str, size_t size, SEXP_format_t fmt, SEXP_t *sexp);
00051 int SEXP_asprintf (char **ret, SEXP_format_t fmt, SEXP_t *sexp);
00052 int SEXP_asnprintf (char **ret, size_t maxsz, SEXP_format_t fmt, SEXP_t *sexp);
00053
00054 ssize_t SEXP_st_dprintf (int fd, SEXP_format_t fmt, SEXP_t *sexp, SEXP_ostate_t **ost);
00055 ssize_t SEXP_st_dnprintf (int fd, size_t maxsz, SEXP_format_t fmt, SEXP_t *sexp, SEXP_ostate_t **ost);
00056
00057
00058 ssize_t SEXP_st_dprintc (int fd, SEXP_t *sexp, SEXP_ostate_t **ost);
00059 ssize_t SEXP_st_dnprintc (int fd, size_t maxsz, SEXP_t *sexp, SEXP_ostate_t **ost);
00060
00061 #define SEXP_printf_canonical SEXP_printfc
00062 #define SEXP_fprintf_canonical SEXP_fprintfc
00063 #define SEXP_dprintf_canonical SEXP_dprintfc
00064 #define SEXP_sprintf_canonical SEXP_sprintfc
00065 #define SEXP_snprintf_canonical SEXP_snprintfc
00066 #define SEXP_asprintf_canonical SEXP_asprintfc
00067 #define SEXP_asnprintf_canonical SEXP_asnprintfc
00068
00069 int SEXP_printfc (SEXP_t *sexp);
00070 int SEXP_fprintfc (FILE *fp, SEXP_t *sexp);
00071 int SEXP_dprintfc (int fd, SEXP_t *sexp);
00072 int SEXP_sprintfc (char *str, SEXP_t *sexp);
00073 int SEXP_snprintfc (char *str, size_t size, SEXP_t *sexp);
00074 int SEXP_asprintfc (char **ret, SEXP_t *sexp);
00075 int SEXP_asnprintfc (char **ret, size_t maxsz, SEXP_t *sexp);
00076
00077
00078 ssize_t SEXP_st_dprinta (int fd, SEXP_t *sexp, SEXP_ostate_t **ost);
00079 ssize_t SEXP_st_dnprinta (int fd, size_t maxsz, SEXP_t *sexp, SEXP_ostate_t **ost);
00080
00081 #define SEXP_printf_advanced SEXP_printfa
00082 #define SEXP_fprintf_advanced SEXP_fprintfa
00083 #define SEXP_dprintf_advanced SEXP_dprintfa
00084 #define SEXP_sprintf_advanced SEXP_sprintfa
00085 #define SEXP_snprintf_advanced SEXP_snprintfa
00086 #define SEXP_asprintf_advanced SEXP_asprintfa
00087 #define SEXP_asnprintf_advanced SEXP_asnprintfa
00088
00089 int SEXP_printfa (SEXP_t *sexp);
00090 int SEXP_fprintfa (FILE *fp, SEXP_t *sexp);
00091 int SEXP_dprintfa (int fd, SEXP_t *sexp);
00092 int SEXP_sprintfa (char *str, SEXP_t *sexp);
00093 int SEXP_snprintfa (char *str, size_t size, SEXP_t *sexp);
00094 int SEXP_asprintfa (char **ret, SEXP_t *sexp);
00095 int SEXP_asnprintfa (char **ret, size_t maxsz, SEXP_t *sexp);
00096
00097
00098 ssize_t SEXP_st_dprintt (int fd, SEXP_t *sexp, SEXP_ostate_t **ost);
00099 ssize_t SEXP_st_dnprintt (int fd, size_t maxsz, SEXP_t *sexp, SEXP_ostate_t **ost);
00100
00101 #define SEXP_printf_transport SEXP_printft
00102 #define SEXP_fprintf_transport SEXP_fprintft
00103 #define SEXP_dprintf_transport SEXP_dprintft
00104 #define SEXP_sprintf_transport SEXP_sprintft
00105 #define SEXP_snprintf_transport SEXP_snprintft
00106 #define SEXP_asprintf_transport SEXP_asprintft
00107 #define SEXP_asnprintf_transport SEXP_asnprintft
00108
00109 int SEXP_printft (SEXP_t *sexp);
00110 int SEXP_fprintft (FILE *fp, SEXP_t *sexp);
00111 int SEXP_dprintft (int fd, SEXP_t *sexp);
00112 int SEXP_sprintft (char *str, SEXP_t *sexp);
00113 int SEXP_snprintft (char *str, size_t size, SEXP_t *sexp);
00114 int SEXP_asprintft (char **ret, SEXP_t *sexp);
00115 int SEXP_asnprintft (char **ret, size_t maxsz, SEXP_t *sexp);
00116 #endif
00117
00118 #ifdef __cplusplus
00119 }
00120 #endif
00121
00122 #endif