YAZ 5.37.0
iconv_encode_danmarc.c File Reference

Danmarc2 character set encoding. More...

#include <assert.h>
#include <stdio.h>
#include <errno.h>
#include <string.h>
#include <yaz/xmalloc.h>
#include <yaz/snprintf.h>
#include "iconv-p.h"

Go to the source code of this file.

Data Structures

struct  encoder_data

Macros

#define MAX_COMP   4

Functions

static size_t write1 (yaz_iconv_t cd, unsigned long x, char **outbuf, size_t *outbytesleft)
static size_t flush_danmarc (yaz_iconv_t cd, yaz_iconv_encoder_t e, char **outbuf, size_t *outbytesleft)
static size_t write_danmarc (yaz_iconv_t cd, yaz_iconv_encoder_t e, unsigned long x, char **outbuf, size_t *outbytesleft)
static void init_danmarc (yaz_iconv_encoder_t e)
static void destroy_danmarc (yaz_iconv_encoder_t e)
yaz_iconv_encoder_t yaz_danmarc_encoder (const char *tocode, yaz_iconv_encoder_t e)

Detailed Description

Danmarc2 character set encoding.

Definition in file iconv_encode_danmarc.c.

Macro Definition Documentation

◆ MAX_COMP

#define MAX_COMP   4

Definition at line 23 of file iconv_encode_danmarc.c.

Function Documentation

◆ destroy_danmarc()

void destroy_danmarc ( yaz_iconv_encoder_t e)
static

Definition at line 159 of file iconv_encode_danmarc.c.

References yaz_iconv_encoder_s::data, and xfree.

◆ flush_danmarc()

◆ init_danmarc()

void init_danmarc ( yaz_iconv_encoder_t e)
static

◆ write1()

size_t write1 ( yaz_iconv_t cd,
unsigned long x,
char ** outbuf,
size_t * outbytesleft )
static

Definition at line 33 of file iconv_encode_danmarc.c.

References YAZ_ICONV_E2BIG, YAZ_ICONV_EILSEQ, yaz_iconv_set_errno(), and yaz_snprintf().

Referenced by flush_danmarc().

◆ write_danmarc()

size_t write_danmarc ( yaz_iconv_t cd,
yaz_iconv_encoder_t e,
unsigned long x,
char ** outbuf,
size_t * outbytesleft )
static

◆ yaz_danmarc_encoder()