Alex Crichton 44738e049a Add warnings about UTF-16 vs UTF-8 strings
This commit aims to address #1348 via a number of strategies:

* Documentation is updated to warn about UTF-16 vs UTF-8 problems
  between JS and Rust. Notably documenting that `as_string` and handling
  of arguments is lossy when there are lone surrogates.

* A `JsString::is_valid_utf16` method was added to test whether
  `as_string` is lossless or not.

The intention is that most default behavior of `wasm-bindgen` will
remain, but where necessary bindings will use `JsString` instead of
`str`/`String` and will manually check for `is_valid_utf16` as
necessary. It's also hypothesized that this is relatively rare and not
too performance critical, so an optimized intrinsic for `is_valid_utf16`
is not yet provided.

Closes #1348
2019-04-05 08:11:50 -07:00
..
2019-03-21 17:08:48 -07:00
2019-03-21 17:08:48 -07:00
2019-03-21 17:08:48 -07:00
2019-03-21 17:08:48 -07:00
2019-03-21 17:08:48 -07:00
2019-03-21 17:08:48 -07:00
2019-03-21 17:08:48 -07:00
2019-03-21 17:08:48 -07:00
2019-03-21 17:08:48 -07:00
2019-03-21 17:08:48 -07:00
2019-03-21 17:08:48 -07:00
2019-03-21 17:08:48 -07:00
2019-03-21 17:08:48 -07:00
2019-03-21 17:08:48 -07:00
2019-03-21 17:08:48 -07:00
2019-03-21 17:08:48 -07:00
2019-03-21 17:08:48 -07:00
2019-03-21 17:08:48 -07:00
2019-03-21 17:08:48 -07:00
2018-09-20 16:45:30 -07:00

Examples

This directory contains a number of Cargo projects that are all examples of how to use wasm-bindgen in various contexts. More documentation can be found online