reseting a converter. */
int (*resetter) (MConverter *converter);
- int (*decoder) (unsigned char *str, int str_bytes, MText *mt,
+ int (*decoder) (const unsigned char *str, int str_bytes, MText *mt,
MConverter *converter);
int (*encoder) (MText *mt, int from, int to,
static int
finish_decoding (MText *mt, MConverter *converter, int nchars,
- unsigned char *source, unsigned char *src_end,
- unsigned char *src,
+ const unsigned char *source, const unsigned char *src_end,
+ const unsigned char *src,
int error)
{
MConverterStatus *internal = (MConverterStatus *) converter->internal_info;
{
unsigned char *dst = mt->data + mt->nbytes;
unsigned char *dst_end = mt->data + mt->allocated;
- unsigned char *src_stop = src_end;
+ const unsigned char *src_stop = src_end;
int c;
int last_nchars = nchars;
}
static int
-decode_coding_charset (unsigned char *source, int src_bytes, MText *mt,
+decode_coding_charset (const unsigned char *source, int src_bytes, MText *mt,
MConverter *converter)
{
MConverterStatus *internal = (MConverterStatus *) converter->internal_info;
MCodingSystem *coding = internal->coding;
- unsigned char *src = internal->carryover;
- unsigned char *src_stop = src + internal->carryover_bytes;
- unsigned char *src_end = source + src_bytes;
- unsigned char *src_base;
+ const unsigned char *src = internal->carryover;
+ const unsigned char *src_stop = src + internal->carryover_bytes;
+ const unsigned char *src_end = source + src_bytes;
+ const unsigned char *src_base;
unsigned char *dst = mt->data + mt->nbytes;
unsigned char *dst_end = mt->data + mt->allocated;
int nchars = 0;
static int
-decode_coding_utf_8 (unsigned char *source, int src_bytes, MText *mt,
+decode_coding_utf_8 (const unsigned char *source, int src_bytes, MText *mt,
MConverter *converter)
{
MConverterStatus *internal = (MConverterStatus *) converter->internal_info;
MCodingSystem *coding = internal->coding;
- unsigned char *src = internal->carryover;
- unsigned char *src_stop = src + internal->carryover_bytes;
- unsigned char *src_end = source + src_bytes;
- unsigned char *src_base;
+ const unsigned char *src = internal->carryover;
+ const unsigned char *src_stop = src + internal->carryover_bytes;
+ const unsigned char *src_end = source + src_bytes;
+ const unsigned char *src_base;
unsigned char *dst = mt->data + mt->nbytes;
unsigned char *dst_end = mt->data + mt->allocated;
int nchars = 0;
}
static int
-decode_coding_utf_16 (unsigned char *source, int src_bytes, MText *mt,
+decode_coding_utf_16 (const unsigned char *source, int src_bytes, MText *mt,
MConverter *converter)
{
MConverterStatus *internal = (MConverterStatus *) converter->internal_info;
- unsigned char *src = internal->carryover;
- unsigned char *src_stop = src + internal->carryover_bytes;
- unsigned char *src_end = source + src_bytes;
- unsigned char *src_base;
+ const unsigned char *src = internal->carryover;
+ const unsigned char *src_stop = src + internal->carryover_bytes;
+ const unsigned char *src_end = source + src_bytes;
+ const unsigned char *src_base;
unsigned char *dst = mt->data + mt->nbytes;
unsigned char *dst_end = mt->data + mt->allocated;
int nchars = 0;
static int
-decode_coding_utf_32 (unsigned char *source, int src_bytes, MText *mt,
+decode_coding_utf_32 (const unsigned char *source, int src_bytes, MText *mt,
MConverter *converter)
{
MConverterStatus *internal = (MConverterStatus *) converter->internal_info;
- unsigned char *src = internal->carryover;
- unsigned char *src_stop = src + internal->carryover_bytes;
- unsigned char *src_end = source + src_bytes;
- unsigned char *src_base;
+ const unsigned char *src = internal->carryover;
+ const unsigned char *src_stop = src + internal->carryover_bytes;
+ const unsigned char *src_end = source + src_bytes;
+ const unsigned char *src_base;
unsigned char *dst = mt->data + mt->nbytes;
unsigned char *dst_end = mt->data + mt->allocated;
int nchars = 0;
}
static int
-decode_coding_iso_2022 (unsigned char *source, int src_bytes, MText *mt,
+decode_coding_iso_2022 (const unsigned char *source, int src_bytes, MText *mt,
MConverter *converter)
{
MConverterStatus *internal = (MConverterStatus *) converter->internal_info;
MCodingSystem *coding = internal->coding;
- unsigned char *src = internal->carryover;
- unsigned char *src_stop = src + internal->carryover_bytes;
- unsigned char *src_end = source + src_bytes;
- unsigned char *src_base;
+ const unsigned char *src = internal->carryover;
+ const unsigned char *src_stop = src + internal->carryover_bytes;
+ const unsigned char *src_end = source + src_bytes;
+ const unsigned char *src_base;
unsigned char *dst = mt->data + mt->nbytes;
unsigned char *dst_end = mt->data + mt->allocated;
int nchars = 0;
}
static int
-decode_coding_sjis (unsigned char *source, int src_bytes, MText *mt,
+decode_coding_sjis (const unsigned char *source, int src_bytes, MText *mt,
MConverter *converter)
{
MConverterStatus *internal = (MConverterStatus *) converter->internal_info;
MCodingSystem *coding = internal->coding;
- unsigned char *src = internal->carryover;
- unsigned char *src_stop = src + internal->carryover_bytes;
- unsigned char *src_end = source + src_bytes;
- unsigned char *src_base;
+ const unsigned char *src = internal->carryover;
+ const unsigned char *src_stop = src + internal->carryover_bytes;
+ const unsigned char *src_end = source + src_bytes;
+ const unsigned char *src_base;
unsigned char *dst = mt->data + mt->nbytes;
unsigned char *dst_end = mt->data + mt->allocated - MAX_UTF8_CHAR_BYTES;
int nchars = 0;
@c MERROR_CODING */
MSymbol
-mconv_define_coding (char *name, MPlist *plist,
+mconv_define_coding (const char *name, MPlist *plist,
int (*resetter) (MConverter *),
- int (*decoder) (unsigned char *, int, MText *,
+ int (*decoder) (const unsigned char *, int, MText *,
MConverter *),
int (*encoder) (MText *, int, int,
unsigned char *, int,
@brief Create a code converter bound to a buffer.
The mconv_buffer_converter () function creates a pointer to a code
- converter for coding system $CODING. The code converter is bound
+ converter for coding system $NAME. The code converter is bound
to buffer area of $N bytes pointed to by $BUF. Subsequent
decodings and encodings are done to/from this buffer area.
- $CODING can be #Mnil. In this case, a coding system associated
+ $NAME can be #Mnil. In this case, a coding system associated
with the current locale (LC_CTYPE) is used.
@return
/***ja
@brief ¥Ð¥Ã¥Õ¥¡¤Ë·ë¤ÓÉÕ¤±¤é¤ì¤¿¥³¡¼¥É¥³¥ó¥Ð¡¼¥¿¤òºî¤ë.
- ´Ø¿ô mconv_buffer_converter () ¤Ï¡¢¥³¡¼¥É·Ï $CODING ÍѤΥ³¡¼¥É¥³¥ó
+ ´Ø¿ô mconv_buffer_converter () ¤Ï¡¢¥³¡¼¥É·Ï $NAME ÍѤΥ³¡¼¥É¥³¥ó
¥Ð¡¼¥¿¤òºî¤ë¡£¤³¤Î¥³¡¼¥É¥³¥ó¥Ð¡¼¥¿¤Ï¡¢$BUF ¤Ç¼¨¤µ¤ì¤ëÂ礤µ $N ¥Ð
¥¤¥È¤Î¥Ð¥Ã¥Õ¥¡Îΰè¤Ë·ë¤ÓÉÕ¤±¤é¤ì¤ë¡£¤³¤ì°Ê¹ß¤Î¥Ç¥³¡¼¥É¤ª¤è¤Ó
¥¨¥ó¥³¡¼¥É¤Ï¡¢¤³¤Î¥Ð¥Ã¥Õ¥¡Îΰè¤ËÂФ·¤Æ¹Ô¤Ê¤ï¤ì¤ë¡£
- $CODING ¤Ï #Mnil ¤Ç¤¢¤Ã¤Æ¤â¤è¤¤¡£¤³¤Î¾ì¹ç¤Ï¸½ºß¤Î¥í¥±¡¼¥ë
+ $NAME ¤Ï #Mnil ¤Ç¤¢¤Ã¤Æ¤â¤è¤¤¡£¤³¤Î¾ì¹ç¤Ï¸½ºß¤Î¥í¥±¡¼¥ë
(LC_CTYPE) ¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿¥³¡¼¥É·Ï¤¬»È¤ï¤ì¤ë¡£
@return
/***en
@brief Create a code converter bound to a stream.
- The mconv_stream_converter () function create a pointer to a code
- converter for coding system $CODING. The code converter is bound
+ The mconv_stream_converter () function creates a pointer to a code
+ converter for coding system $NAME. The code converter is bound
to stream $FP. Subsequent decodings and encodings are done
to/from this stream.
- $CODING can be #Mnil. In this case, a coding system associated
+ $NAME can be #Mnil. In this case, a coding system associated
with the current locale (LC_CTYPE) is used.
@return If the operation was successful, mconv_stream_converter ()
/***ja
@brief ¥¹¥È¥ê¡¼¥à¤Ë·ë¤ÓÉÕ¤±¤é¤ì¤¿¥³¡¼¥É¥³¥ó¥Ð¡¼¥¿¤òºî¤ë.
- ´Ø¿ô mconv_stream_converter () ¤Ï¡¢¥³¡¼¥É·Ï $CODING ÍѤΥ³¡¼¥É¥³¥ó
+ ´Ø¿ô mconv_stream_converter () ¤Ï¡¢¥³¡¼¥É·Ï $NAME ÍѤΥ³¡¼¥É¥³¥ó
¥Ð¡¼¥¿¤òºî¤ë¡£¤³¤Î¥³¡¼¥É¥³¥ó¥Ð¡¼¥¿¤Ï¡¢¥¹¥È¥ê¡¼¥à $FP ¤Ë·ë¤ÓÉÕ¤±¤é
¤ì¤ë¡£¤³¤ì°Ê¹ß¤Î¥Ç¥³¡¼¥É¤ª¤è¤Ó¥¨¥ó¥³¡¼¥É¤Ï¡¢¤³¤Î¥¹¥È¥ê¡¼¥à¤ËÂФ·¤Æ
¹Ô¤Ê¤ï¤ì¤ë¡£
- $CODING ¤Ï #Mnil ¤Ç¤¢¤Ã¤Æ¤â¤è¤¤¡£¤³¤Î¾ì¹ç¤Ï¸½ºß¤Î¥í¥±¡¼¥ë
+ $NAME ¤Ï #Mnil ¤Ç¤¢¤Ã¤Æ¤â¤è¤¤¡£¤³¤Î¾ì¹ç¤Ï¸½ºß¤Î¥í¥±¡¼¥ë
(LC_CTYPE) ¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿¥³¡¼¥É·Ï¤¬»È¤ï¤ì¤ë¡£
@return
The mconv_decode () function decodes a byte sequence and appends
the result at the end of M-text $MT. The source byte sequence is
- taken from currently bound the buffer area or the stream.
+ taken from either the buffer area or the stream that is currently
+ bound to $CONVERTER.
@return
If the operation was successful, mconv_decode () returns updated
@brief ¥Ð¥¤¥ÈÎó¤ò M-text ¤Ë¥Ç¥³¡¼¥É¤¹¤ë.
´Ø¿ô mconv_decode () ¤Ï¡¢¥Ð¥¤¥ÈÎó¤ò¥Ç¥³¡¼¥É¤·¤Æ¤½¤Î·ë²Ì¤ò M-text
- $MT ¤ÎËöÈø¤ËÄɲ乤롣¥Ç¥³¡¼¥É¸µ¤Î¥Ð¥¤¥ÈÎó¤Ï¡¢¸½ºß·ë¤ÓÉÕ¤±¤é¤ì¤Æ¤¤¤ë
- ¥Ð¥Ã¥Õ¥¡Îΰ褢¤ë¤¤¤Ï¥¹¥È¥ê¡¼¥à¤«¤é¼è¤é¤ì¤ë¡£
+ $MT ¤ÎËöÈø¤ËÄɲ乤롣¥Ç¥³¡¼¥É¸µ¤Î¥Ð¥¤¥ÈÎó¤Ï¡¢$CONVERTER ¤Ë¸½ºß·ë
+ ¤ÓÉÕ¤±¤é¤ì¤Æ¤¤¤ë¥Ð¥Ã¥Õ¥¡Îΰ褢¤ë¤¤¤Ï¥¹¥È¥ê¡¼¥à¤«¤é¼è¤é¤ì¤ë¡£
@return
¤â¤·½èÍý¤¬À®¸ù¤¹¤ì¤Ð¡¢mconv_decode () ¤Ï¹¹¿·¤µ¤ì¤¿ $MT ¤òÊÖ¤¹¡£¤½
/***en
@brief Decode a buffer area based on a coding system.
- The mconv_decode_buffer () function decodes $N bytes of buffer
+ The mconv_decode_buffer () function decodes $N bytes of the buffer
area pointed to by $BUF based on the coding system $NAME. A
temporary code converter for decoding is automatically created
and freed.
error code to the external variable #merror_code. */
/***ja
- @brief M-text ¤Î°ìÉô¤ò¤ò¥Ð¥¤¥ÈÎó¤Ë¥¨¥ó¥³¡¼¥É¤¹¤ë.
+ @brief M-text ¤Î°ìÉô¤ò¥Ð¥¤¥ÈÎó¤Ë¥¨¥ó¥³¡¼¥É¤¹¤ë.
´Ø¿ô mconv_encode_range () ¤Ï¡¢M-text $MT ¤Î $FROM ¡Ê´Þ¤à¡Ë¤«¤é
$TO ¡Ê´Þ¤Þ¤Ê¤¤¡Ë¤Þ¤Ç¤ÎÈϰϤΥƥ¥¹¥È¤ò¥¨¥ó¥³¡¼¥É¤·¤Æ¡¢¥³¡¼¥É¥³¥ó¥Ð¡¼
an error code to the external variable #merror_code. */
/***ja
- @brief ¥³¡¼¥É¥³¥ó¥Ð¡¼¥¿¤ò·Ðͳ¤Ç1ʸ»ú½ñ¤¯.
+ @brief ¥³¡¼¥É¥³¥ó¥Ð¡¼¥¿¤ò·Ðͳ¤·¤Æ1ʸ»ú½ñ¤¯.
´Ø¿ô mconv_putc () ¤Ï¡¢¥³¡¼¥É¥³¥ó¥Ð¡¼¥¿ $CONVERTER ¤Ë¸½ºß·ë¤ÓÉÕ¤±
¤é¤ì¤Æ¤¤¤ë¥Ð¥Ã¥Õ¥¡Îΰ褢¤ë¤¤¤Ï¥¹¥È¥ê¡¼¥à¤Ëʸ»ú $C ¤ò½ñ¤½Ð¤¹¡£Ê¸»ú