1
# POSIX additions to <stdio.h>.
2
# https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/stdio.h.html
4
from libc.stdio cimport FILE
5
from libc.stddef cimport wchar_t
6
from posix.types cimport off_t
8
cdef extern from "<stdio.h>" nogil:
10
FILE *fdopen(int, const char *)
14
FILE *popen(const char *, const char *)
17
# Memory streams (POSIX.2008)
18
FILE *fmemopen(void *, size_t, const char *)
19
FILE *open_memstream(char **, size_t *)
20
FILE *open_wmemstream(wchar_t **, size_t *)
22
# Seek and tell with off_t
23
int fseeko(FILE *, off_t, int)
26
# Locking (for multithreading)
27
void flockfile(FILE *)
28
int ftrylockfile(FILE *)
29
void funlockfile(FILE *)
30
int getc_unlocked(FILE *)
31
int getchar_unlocked()
32
int putc_unlocked(int, FILE *)
33
int putchar_unlocked(int)
35
# Reading lines and records (POSIX.2008)
36
ssize_t getline(char **, size_t *, FILE *)
37
ssize_t getdelim(char **, size_t *, int, FILE *)