diff options
-rw-r--r-- | ChangeLog | 11 | ||||
-rw-r--r-- | enc/trans/iso2022.trans | 4 | ||||
-rw-r--r-- | enc/trans/newline.trans | 6 | ||||
-rw-r--r-- | enc/trans/utf_16_32.trans | 16 | ||||
-rw-r--r-- | tool/transcode-tblgen.rb | 7 |
5 files changed, 29 insertions, 15 deletions
@@ -1,3 +1,14 @@ +Tue Sep 2 03:16:42 2008 Tanaka Akira <akr@fsij.org> + + * tool/transcode-tblgen.rb: define TRANSCODE_TABLE_INFO in generated + code. use it in rb_transcoder. + + * enc/trans/newline.trans: use TRANSCODE_TABLE_INFO. + + * enc/trans/iso2022.trans: ditto. + + * enc/trans/utf_16_32.trans: ditto. + Tue Sep 2 03:04:33 2008 Tanaka Akira <akr@fsij.org> * tool/transcode-tblgen.rb: record infos and BYTE_LOOKUPs as index of diff --git a/enc/trans/iso2022.trans b/enc/trans/iso2022.trans index a11424c2c5..49da2c3f6c 100644 --- a/enc/trans/iso2022.trans +++ b/enc/trans/iso2022.trans @@ -70,7 +70,7 @@ fun_so_iso2022jp_to_eucjp(rb_transcoding* t, const unsigned char* s, size_t l, u static const rb_transcoder rb_ISO_2022_JP_to_EUC_JP = { "ISO-2022-JP", "EUC-JP", iso2022jp_to_eucjp, - byte_array, word_array, sizeof(uintptr_t), + TRANSCODE_TABLE_INFO, 1, /* input_unit_length */ 3, /* max_input */ 3, /* max_output */ @@ -143,7 +143,7 @@ finish_eucjp_to_iso2022jp(rb_transcoding *t, unsigned char *o) static const rb_transcoder rb_EUC_JP_to_ISO_2022_JP = { "EUC-JP", "ISO-2022-JP", eucjp_to_iso2022jp, - byte_array, word_array, sizeof(uintptr_t), + TRANSCODE_TABLE_INFO, 1, /* input_unit_length */ 3, /* max_input */ 5, /* max_output */ diff --git a/enc/trans/newline.trans b/enc/trans/newline.trans index 6431a7d951..da8202eea4 100644 --- a/enc/trans/newline.trans +++ b/enc/trans/newline.trans @@ -55,7 +55,7 @@ fun_so_universal_newline(rb_transcoding* t, const unsigned char* s, size_t l, un static const rb_transcoder rb_universal_newline = { "universal_newline", "", universal_newline, - byte_array, word_array, sizeof(uintptr_t), + TRANSCODE_TABLE_INFO, 1, /* input_unit_length */ 1, /* max_input */ 1, /* max_output */ @@ -66,7 +66,7 @@ rb_universal_newline = { static const rb_transcoder rb_crlf_newline = { "", "crlf_newline", crlf_newline, - byte_array, word_array, sizeof(uintptr_t), + TRANSCODE_TABLE_INFO, 1, /* input_unit_length */ 1, /* max_input */ 2, /* max_output */ @@ -77,7 +77,7 @@ rb_crlf_newline = { static const rb_transcoder rb_cr_newline = { "", "cr_newline", cr_newline, - byte_array, word_array, sizeof(uintptr_t), + TRANSCODE_TABLE_INFO, 1, /* input_unit_length */ 1, /* max_input */ 1, /* max_output */ diff --git a/enc/trans/utf_16_32.trans b/enc/trans/utf_16_32.trans index bb6db9d5e4..d5333581c4 100644 --- a/enc/trans/utf_16_32.trans +++ b/enc/trans/utf_16_32.trans @@ -262,7 +262,7 @@ fun_so_to_utf_32le(rb_transcoding* t, const unsigned char* s, size_t l, unsigned static const rb_transcoder rb_from_UTF_16BE = { "UTF-16BE", "UTF-8", from_UTF_16BE, - byte_array, word_array, sizeof(uintptr_t), + TRANSCODE_TABLE_INFO, 2, /* input_unit_length */ 4, /* max_input */ 4, /* max_output */ @@ -273,7 +273,7 @@ rb_from_UTF_16BE = { static const rb_transcoder rb_to_UTF_16BE = { "UTF-8", "UTF-16BE", to_UTF_16BE, - byte_array, word_array, sizeof(uintptr_t), + TRANSCODE_TABLE_INFO, 1, /* input_unit_length */ 4, /* max_input */ 4, /* max_output */ @@ -284,7 +284,7 @@ rb_to_UTF_16BE = { static const rb_transcoder rb_from_UTF_16LE = { "UTF-16LE", "UTF-8", from_UTF_16LE, - byte_array, word_array, sizeof(uintptr_t), + TRANSCODE_TABLE_INFO, 2, /* input_unit_length */ 4, /* max_input */ 4, /* max_output */ @@ -295,7 +295,7 @@ rb_from_UTF_16LE = { static const rb_transcoder rb_to_UTF_16LE = { "UTF-8", "UTF-16LE", to_UTF_16BE, - byte_array, word_array, sizeof(uintptr_t), + TRANSCODE_TABLE_INFO, 1, /* input_unit_length */ 4, /* max_input */ 4, /* max_output */ @@ -306,7 +306,7 @@ rb_to_UTF_16LE = { static const rb_transcoder rb_from_UTF_32BE = { "UTF-32BE", "UTF-8", from_UTF_32BE, - byte_array, word_array, sizeof(uintptr_t), + TRANSCODE_TABLE_INFO, 4, /* input_unit_length */ 4, /* max_input */ 4, /* max_output */ @@ -317,7 +317,7 @@ rb_from_UTF_32BE = { static const rb_transcoder rb_to_UTF_32BE = { "UTF-8", "UTF-32BE", to_UTF_16BE, - byte_array, word_array, sizeof(uintptr_t), + TRANSCODE_TABLE_INFO, 1, /* input_unit_length */ 4, /* max_input */ 4, /* max_output */ @@ -328,7 +328,7 @@ rb_to_UTF_32BE = { static const rb_transcoder rb_from_UTF_32LE = { "UTF-32LE", "UTF-8", from_UTF_32LE, - byte_array, word_array, sizeof(uintptr_t), + TRANSCODE_TABLE_INFO, 4, /* input_unit_length */ 4, /* max_input */ 4, /* max_output */ @@ -339,7 +339,7 @@ rb_from_UTF_32LE = { static const rb_transcoder rb_to_UTF_32LE = { "UTF-8", "UTF-32LE", to_UTF_16BE, - byte_array, word_array, sizeof(uintptr_t), + TRANSCODE_TABLE_INFO, 1, /* input_unit_length */ 4, /* max_input */ 4, /* max_output */ diff --git a/tool/transcode-tblgen.rb b/tool/transcode-tblgen.rb index 1915d31f64..928e722a5c 100644 --- a/tool/transcode-tblgen.rb +++ b/tool/transcode-tblgen.rb @@ -587,7 +587,7 @@ def transcode_tblgen(from, to, map) static const rb_transcoder #{transcoder_name} = { #{c_esc from}, #{c_esc to}, #{real_tree_name}, - byte_array, word_array, sizeof(uintptr_t), + TRANSCODE_TABLE_INFO, #{input_unit_length}, /* input_unit_length */ #{max_input}, /* max_input */ #{max_output}, /* max_output */ @@ -607,7 +607,10 @@ def transcode_generate_node(am, name_hint=nil) end def transcode_generated_code - TRANSCODE_GENERATED_BYTES_CODE + TRANSCODE_GENERATED_WORDS_CODE + TRANSCODE_GENERATED_TRANSCODER_CODE + TRANSCODE_GENERATED_BYTES_CODE + + TRANSCODE_GENERATED_WORDS_CODE + + "\#define TRANSCODE_TABLE_INFO byte_array, word_array, sizeof(uintptr_t)\n" + + TRANSCODE_GENERATED_TRANSCODER_CODE end def transcode_register_code |