diff options
Diffstat (limited to 'examples/dte/convert.h')
| -rw-r--r-- | examples/dte/convert.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/examples/dte/convert.h b/examples/dte/convert.h new file mode 100644 index 0000000..306609e --- /dev/null +++ b/examples/dte/convert.h @@ -0,0 +1,24 @@ +#ifndef ENCODING_CONVERT_H +#define ENCODING_CONVERT_H + +#include <stdbool.h> +#include <sys/types.h> +#include "encoding.h" +#include "util/macros.h" + +typedef struct FileDecoder FileDecoder; +typedef struct FileEncoder FileEncoder; + +bool conversion_supported_by_iconv(const char *from, const char *to) NONNULL_ARGS; + +FileDecoder *new_file_decoder(const char *encoding, const unsigned char *buf, size_t size); +void free_file_decoder(FileDecoder *dec); +bool file_decoder_read_line(FileDecoder *dec, const char **line, size_t *len) NONNULL_ARGS WARN_UNUSED_RESULT; +const char *file_decoder_get_encoding(const FileDecoder *dec) NONNULL_ARGS; + +FileEncoder *new_file_encoder(const Encoding *encoding, bool crlf, int fd) NONNULL_ARGS; +void free_file_encoder(FileEncoder *enc) NONNULL_ARGS; +ssize_t file_encoder_write(FileEncoder *enc, const unsigned char *buf, size_t size) NONNULL_ARGS WARN_UNUSED_RESULT; +size_t file_encoder_get_nr_errors(const FileEncoder *enc) NONNULL_ARGS; + +#endif |
