1/*
2 * This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
5 *
6 * Copyright 1997 - July 2008 CWI, August 2008 - 2019 MonetDB B.V.
7 */
8
9#ifndef _PRINT_H_
10#define _PRINT_H_
11
12#include "mal.h"
13#include "mal_instruction.h"
14#include "mal_interpreter.h"
15
16typedef struct {
17 int up, down;
18} bipipe;
19
20typedef FILE *fstream;
21
22mal_export str IOprint_val(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p);
23mal_export str IOprintf(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci);
24mal_export str IOprintfStream(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci);
25mal_export str IOtable(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci);
26mal_export str IOexport(void *ret, bat *bid, str *fnme);
27mal_export str IOimport(void *ret, bat *bid, str *fnme);
28mal_export str io_stdin(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci);
29mal_export str io_stdout(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci);
30
31mal_export str IOsetmallocsuccesscount(void *res, lng *nbytes);
32
33#endif /* _PRINT_H_ */
34