#ifndef __PRINT_P_H__
#define __PRINT_P_H__

extern _VOID_ print_string _P_((Lisp_Object string, Lisp_Object printcharfun));
extern _VOID_ write_string _P_((char *data, int size));
extern _VOID_ write_string_1 _P_((char *data, int size,
                                  Lisp_Object printcharfun));
extern _VOID_ temp_output_buffer_setup _P_((char *bufname));
extern Lisp_Object internal_with_output_to_temp_buffer
    _P_((char *bufname, Lisp_Object (*function)(Lisp_Object args),
         Lisp_Object args));
extern _VOID_ float_to_string _P_((unsigned char *buf, double data));
extern _VOID_ print_interval _P_((INTERVAL interval,
                                  Lisp_Object printcharfun));
extern _VOID_ syms_of_print _P_((void));
    
DEFUN_P(Fwrite_char, (Lisp_Object ch, Lisp_Object printcharfun));
DEFUN_P(Fwith_output_to_temp_buffer, (Lisp_Object args));
DEFUN_P(Fterpri, (Lisp_Object printcharfun));
DEFUN_P(Fprin1, (Lisp_Object obj, Lisp_Object printcharfun));
DEFUN_P(Fprin1_to_string, (Lisp_Object obj, Lisp_Object noescape));
DEFUN_P(Fprinc, (Lisp_Object obj, Lisp_Object printcharfun));
DEFUN_P(Fprint, (Lisp_Object obj, Lisp_Object printcharfun));
DEFUN_P(Fexternal_debugging_output, (Lisp_Object character));

#endif
