Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 39 lines (31 sloc) 1.406 kB
7d7d3e8 @ferrous26 Change ownership to The MacRuby Team and update copyrights
ferrous26 authored
1 /*
2122743 @vincentisambart Started using C-blocks (note that they should not be used in
vincentisambart authored
2 * MacRuby implementation of Ruby 1.9 String.
3 *
4 * This file is covered by the Ruby license. See COPYING for more details.
7d7d3e8 @ferrous26 Change ownership to The MacRuby Team and update copyrights
ferrous26 authored
5 *
6 * Copyright (C) 2012, The MacRuby Team. All rights reserved.
9595725 update copyrights to 2011
Laurent Sansonetti authored
7 * Copyright (C) 2007-2011, Apple Inc. All rights reserved.
2122743 @vincentisambart Started using C-blocks (note that they should not be used in
vincentisambart authored
8 * Copyright (C) 1993-2007 Yukihiro Matsumoto
9 * Copyright (C) 2000 Network Applied Communication Laboratory, Inc.
10 * Copyright (C) 2000 Information-technology Promotion Agency, Japan
11 */
12
13 #ifndef __UCNV_H_
14 #define __UCNV_H_
15
16 #include "encoding.h"
17
18 #if defined(__cplusplus)
19 extern "C" {
20 #endif
21
e22f26d @vincentisambart changed the internal representation of strings
vincentisambart authored
22 typedef void (^each_uchar32_callback_t)(UChar32 c, long start_index, long length, bool *stop);
2122743 @vincentisambart Started using C-blocks (note that they should not be used in
vincentisambart authored
23
24 void str_ucnv_update_flags(rb_str_t *self);
25 long str_ucnv_length(rb_str_t *self, bool ucs2_mode);
26 character_boundaries_t str_ucnv_get_character_boundaries(rb_str_t *self, long index, bool ucs2_mode);
664fa15 @vincentisambart String#rindex should work better (even though it may be a bit slower …
vincentisambart authored
27 long str_ucnv_offset_in_bytes_to_index(rb_str_t *self, long offset_in_bytes, bool ucs2_mode);
2122743 @vincentisambart Started using C-blocks (note that they should not be used in
vincentisambart authored
28 void str_ucnv_transcode_to_utf16(struct rb_encoding *src_enc, rb_str_t *self, long *pos, UChar **utf16, long *utf16_length);
29 void str_ucnv_transcode_from_utf16(struct rb_encoding *dst_enc, UChar *utf16, long utf16_length, long *utf16_pos, char **bytes, long *bytes_length);
5431f86 @vincentisambart String#index faster and with less bugs
vincentisambart authored
30 void str_ucnv_each_uchar32_starting_from(rb_str_t *self,
31 long start_offset_in_bytes,
32 each_uchar32_callback_t callback);
2122743 @vincentisambart Started using C-blocks (note that they should not be used in
vincentisambart authored
33
34 #if defined(__cplusplus)
35 } // extern "C"
36 #endif
37
38 #endif /* __UCNV_H_ */
Something went wrong with that request. Please try again.