physfs.h
branchstable-2.0
changeset 1095 69b884a15de1
parent 1087 064f8098c899
child 1148 236afd18dd8c
equal deleted inserted replaced
1088:d19e235efe5f 1095:69b884a15de1
  2270  *  never uses more than 32-bits per character, so while it may shrink a UCS-4
  2270  *  never uses more than 32-bits per character, so while it may shrink a UCS-4
  2271  *  string, it will never expand it.
  2271  *  string, it will never expand it.
  2272  *
  2272  *
  2273  * Strings that don't fit in the destination buffer will be truncated, but
  2273  * Strings that don't fit in the destination buffer will be truncated, but
  2274  *  will always be null-terminated and never have an incomplete UTF-8
  2274  *  will always be null-terminated and never have an incomplete UTF-8
  2275  *  sequence at the end.
  2275  *  sequence at the end. If the buffer length is 0, this function does nothing.
  2276  *
  2276  *
  2277  *   \param src Null-terminated source string in UCS-4 format.
  2277  *   \param src Null-terminated source string in UCS-4 format.
  2278  *   \param dst Buffer to store converted UTF-8 string.
  2278  *   \param dst Buffer to store converted UTF-8 string.
  2279  *   \param len Size, in bytes, of destination buffer.
  2279  *   \param len Size, in bytes, of destination buffer.
  2280  */
  2280  */
  2292  *  UTF-8 uses from one to four bytes per character, but UCS-4 always uses
  2292  *  UTF-8 uses from one to four bytes per character, but UCS-4 always uses
  2293  *  four, so an entirely low-ASCII string will quadruple in size!
  2293  *  four, so an entirely low-ASCII string will quadruple in size!
  2294  *
  2294  *
  2295  * Strings that don't fit in the destination buffer will be truncated, but
  2295  * Strings that don't fit in the destination buffer will be truncated, but
  2296  *  will always be null-terminated and never have an incomplete UCS-4
  2296  *  will always be null-terminated and never have an incomplete UCS-4
  2297  *  sequence at the end.
  2297  *  sequence at the end. If the buffer length is 0, this function does nothing.
  2298  *
  2298  *
  2299  *   \param src Null-terminated source string in UTF-8 format.
  2299  *   \param src Null-terminated source string in UTF-8 format.
  2300  *   \param dst Buffer to store converted UCS-4 string.
  2300  *   \param dst Buffer to store converted UCS-4 string.
  2301  *   \param len Size, in bytes, of destination buffer.
  2301  *   \param len Size, in bytes, of destination buffer.
  2302  */
  2302  */
  2315  *  UTF-8 never uses more than 32-bits per character, so while it may shrink
  2315  *  UTF-8 never uses more than 32-bits per character, so while it may shrink
  2316  *  a UCS-2 string, it may also expand it.
  2316  *  a UCS-2 string, it may also expand it.
  2317  *
  2317  *
  2318  * Strings that don't fit in the destination buffer will be truncated, but
  2318  * Strings that don't fit in the destination buffer will be truncated, but
  2319  *  will always be null-terminated and never have an incomplete UTF-8
  2319  *  will always be null-terminated and never have an incomplete UTF-8
  2320  *  sequence at the end.
  2320  *  sequence at the end. If the buffer length is 0, this function does nothing.
  2321  *
  2321  *
  2322  * Please note that UCS-2 is not UTF-16; we do not support the "surrogate"
  2322  * Please note that UCS-2 is not UTF-16; we do not support the "surrogate"
  2323  *  values at this time.
  2323  *  values at this time.
  2324  *
  2324  *
  2325  *   \param src Null-terminated source string in UCS-2 format.
  2325  *   \param src Null-terminated source string in UCS-2 format.
  2341  *  UTF-8 uses from one to four bytes per character, but UCS-2 always uses
  2341  *  UTF-8 uses from one to four bytes per character, but UCS-2 always uses
  2342  *  two, so an entirely low-ASCII string will double in size!
  2342  *  two, so an entirely low-ASCII string will double in size!
  2343  *
  2343  *
  2344  * Strings that don't fit in the destination buffer will be truncated, but
  2344  * Strings that don't fit in the destination buffer will be truncated, but
  2345  *  will always be null-terminated and never have an incomplete UCS-2
  2345  *  will always be null-terminated and never have an incomplete UCS-2
  2346  *  sequence at the end.
  2346  *  sequence at the end. If the buffer length is 0, this function does nothing.
  2347  *
  2347  *
  2348  * Please note that UCS-2 is not UTF-16; we do not support the "surrogate"
  2348  * Please note that UCS-2 is not UTF-16; we do not support the "surrogate"
  2349  *  values at this time.
  2349  *  values at this time.
  2350  *
  2350  *
  2351  *   \param src Null-terminated source string in UTF-8 format.
  2351  *   \param src Null-terminated source string in UTF-8 format.
  2367  *  UTF-8 expands latin1 codepoints over 127 from 1 to 2 bytes, so the string
  2367  *  UTF-8 expands latin1 codepoints over 127 from 1 to 2 bytes, so the string
  2368  *  may grow in some cases.
  2368  *  may grow in some cases.
  2369  *
  2369  *
  2370  * Strings that don't fit in the destination buffer will be truncated, but
  2370  * Strings that don't fit in the destination buffer will be truncated, but
  2371  *  will always be null-terminated and never have an incomplete UTF-8
  2371  *  will always be null-terminated and never have an incomplete UTF-8
  2372  *  sequence at the end.
  2372  *  sequence at the end. If the buffer length is 0, this function does nothing.
  2373  *
  2373  *
  2374  * Please note that we do not supply a UTF-8 to Latin1 converter, since Latin1
  2374  * Please note that we do not supply a UTF-8 to Latin1 converter, since Latin1
  2375  *  can't express most Unicode codepoints. It's a legacy encoding; you should
  2375  *  can't express most Unicode codepoints. It's a legacy encoding; you should
  2376  *  be converting away from it at all times.
  2376  *  be converting away from it at all times.
  2377  *
  2377  *