Restructure of mono.sln and build properties to better fix static/dynamic library...
[mono.git] / docs / sources / mono-api-string.html
1 <h2>Strings</h2>
2
3         <p>Strings representation inside the Mono runtime.
4
5 <h3>Synopsis</h3>
6
7         <div class="mapi-header">
8 #include &lt;metadata/object.h&gt;
9
10 typedef struct {
11         MonoObject object;
12         gint32 length;
13         gunichar2 chars [0];
14 } MonoString;
15
16 @API_IDX@
17         </div>
18
19         <p>All of the operations on strings are done on pointers to
20         `MonoString` objects, like this:
21
22         <div class="mapi-code">
23 MonoString *hello = mono_string_new (mono_domain_get (), "hello, world");
24         </div>
25
26         <p>Strings are bound to a particular application domain, which
27         is why it is necessary to pass a MonoDomain argument as the
28         first parameter to all the constructor functions. 
29
30         <p>Typically, you want to create the strings on the current
31         application domain, so a call to <tt>mono_domain_get()</tt> is
32         sufficient.
33         
34 <h3>Constructors</h3>
35         
36 <h4><a name="api:mono_string_new">mono_string_new</a></h4>
37 <h4><a name="api:mono_string_new_len">mono_string_new_len</a></h4>
38 <h4><a name="api:mono_string_new_size">mono_string_new_size</a></h4>
39 <h4><a name="api:mono_string_new_utf16">mono_string_new_utf16</a></h4>
40 <h4><a name="api:mono_string_new_utf32">mono_string_new_utf32</a></h4>
41 <h4><a name="api:mono_string_from_utf16">mono_string_from_utf16</a></h4>
42 <h4><a name="api:mono_string_from_utf32">mono_string_from_utf32</a></h4>
43
44 <h3>Conversions</h3>
45
46 <h4><a name="api:mono_string_to_utf16">mono_string_to_utf16</a></h4>
47 <h4><a name="api:mono_string_to_utf8">mono_string_to_utf8</a></h4>
48 <h4><a name="api:mono_string_to_utf8_checked">mono_string_to_utf8_checked</a></h4>
49 <h4><a name="api:mono_string_to_utf32">mono_string_to_utf32</a></h4>
50
51 <h3>Methods</h3>
52
53 <h4><a name="api:mono_string_equal">mono_string_equal</a></h4> 
54 <h4><a name="api:mono_string_hash">mono_string_hash</a></h4> 
55 <h4><a name="api:mono_string_intern">mono_string_intern</a></h4>
56 <h4><a name="api:mono_string_is_interned">mono_string_is_interned</a></h4>
57 <h4><a name="api:mono_string_new_wrapper">mono_string_new_wrapper</a></h4>
58 <h4><a name="api:mono_string_chars">mono_string_chars</a></h4>
59 <h4><a name="api:mono_string_length">mono_string_length</a></h4>
60
61