summaryrefslogtreecommitdiff
path: root/include/ruby
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-08-26 15:01:11 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-08-26 15:01:11 +0000
commita68e409eaab13ed85df4308a5a3bbb045dbbd639 (patch)
treef9fef164bb35870430e85be8e38b5a49cec606fa /include/ruby
parent8039100c0abc8b1c71445839ff42f2798f399ac2 (diff)
* include/ruby/encoding.h (rb_econv_elem_t): move to transcode.c
(rb_econv_t): defined as an incomplete type. * transcode.c (rb_econv_elem_t): moved from encoding.h. (rb_econv_t): complete type defined. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18872 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'include/ruby')
-rw-r--r--include/ruby/encoding.h42
1 files changed, 1 insertions, 41 deletions
diff --git a/include/ruby/encoding.h b/include/ruby/encoding.h
index fa3ebeff1d..3c0fcd2572 100644
--- a/include/ruby/encoding.h
+++ b/include/ruby/encoding.h
@@ -206,51 +206,11 @@ typedef enum {
} rb_econv_result_t;
typedef struct {
- struct rb_transcoding *tc;
- unsigned char *out_buf_start;
- unsigned char *out_data_start;
- unsigned char *out_data_end;
- unsigned char *out_buf_end;
- rb_econv_result_t last_result;
-} rb_econv_elem_t;
-
-typedef struct {
int flags;
/* replacement character, etc. */
} rb_econv_option_t;
-typedef struct {
- rb_econv_option_t opts;
- const char *source_encoding_name;
- const char *destination_encoding_name;
-
- unsigned char *in_buf_start;
- unsigned char *in_data_start;
- unsigned char *in_data_end;
- unsigned char *in_buf_end;
- rb_econv_elem_t *elems;
- int num_trans;
- int num_finished;
- int last_trans_index; /* last trans, not including universal newline */
- struct rb_transcoding *last_tc;
-
- /* last error */
- struct {
- rb_econv_result_t result;
- struct rb_transcoding *error_tc;
- const char *source_encoding;
- const char *destination_encoding;
- const unsigned char *error_bytes_start;
- size_t error_bytes_len;
- size_t readagain_len;
- int partial_input;
- } last_error;
-
- /* The following fields are only for Encoding::Converter.
- * rb_econv_open set them NULL. */
- rb_encoding *source_encoding;
- rb_encoding *destination_encoding;
-} rb_econv_t;
+typedef struct rb_econv_t rb_econv_t;
VALUE rb_str_transcode(VALUE str, VALUE to, rb_econv_option_t *ecopts);