Commit Graph

1341 Commits

Author SHA1 Message Date
Alex Crichton
b548239e02 Don't generate code for dead imports 2017-12-20 11:34:53 -08:00
Alex Crichton
5e80b082a9 Allow imports to return JS objects 2017-12-20 10:44:08 -08:00
Alex Crichton
294c5e147b Support passing booleans back and forth 2017-12-20 10:22:18 -08:00
Alex Crichton
730ef1926e Enable the --declaration tsc argument 2017-12-20 08:25:45 -08:00
Alex Crichton
8d7e6f3cdd Ok, let's actually expose memory
May as well have it typed!
2017-12-20 08:22:30 -08:00
Alex Crichton
2fbd784002 Disable tslint automatically
This is generated code, no need to lint it
2017-12-20 08:21:19 -08:00
Alex Crichton
97957d98f1 Fix noUnusedParameters warning 2017-12-20 08:17:20 -08:00
Alex Crichton
5fe842e9bd Allow extra exports not part of wasm-bindgen
Currently throw them all in an interface under `extra` in the main exports
interface. May change in the future...
2017-12-20 08:11:06 -08:00
Alex Crichton
a12a8f414c Support imports outside of wasm_bindgen! 2017-12-20 07:58:41 -08:00
Alex Crichton
66ae545bff Add support for raw pointers in Rust 2017-12-20 07:35:14 -08:00
Alex Crichton
737bd8c965 Add objects to the top of the README 2017-12-19 20:00:52 -08:00
Alex Crichton
91fddfd10f Improve consistency of prefixes 2017-12-19 20:00:25 -08:00
Alex Crichton
d3387d591f Start optimizing code size:
* Use a bundled custom `WasmRefCell` instead of the one in the standard library.
  This one primarily doesn't panic via libstd which means that its code
  footprint is much smaller.
* Add a `throw` function to `wasm_bindgen`-the-crate which can be used to throw
  an exception in JS from Rust. This is useful as a cheap way to throw an
  exception code-wise (little code bloat) and it's also a great way of reporting
  error messages to JS!
* Cut down on the code size of `__wbindgen_malloc` by aborting on huge requests
  earlier.
* Use a custom `assert_not_null` function which delegates to `throw` to test for
  incoming null pointers
2017-12-19 19:53:55 -08:00
Alex Crichton
5b079b8f60 Update gist output 2017-12-19 19:21:43 -08:00
Alex Crichton
85cdb51719 Generate TypeScript by default instead of JS
This is what's needed in the immediate future anyway, so let's do that!
2017-12-19 19:06:48 -08:00
Alex Crichton
34e4cfa95d Link to generated JS bindings 2017-12-19 09:33:52 -08:00
Alex Crichton
db37034d11 Add some notes about impl details of objects 2017-12-19 09:30:57 -08:00
Alex Crichton
597fd98744 Test installation on CI as well 2017-12-19 09:28:31 -08:00
Alex Crichton
946e5317fe Support passing JS objects through Rust 2017-12-19 09:25:41 -08:00
Alex Crichton
eda9beae25 Get imports working in a basic capacity 2017-12-18 21:43:16 -08:00
Alex Crichton
1ffcb90d2d Ensure class arguments have the expected type 2017-12-18 19:01:37 -08:00
Alex Crichton
9ec77e2b44 Add a basic README which at least attempts 2017-12-18 16:35:36 -08:00
Alex Crichton
9eb63fd0df Try to fix tests on windows again 2017-12-18 16:35:04 -08:00
Alex Crichton
9369ae9522 Try installing node on AppVeyor 2017-12-18 16:29:45 -08:00
Alex Crichton
ebc97438e7 Add a test that two mutable borrows is not ok 2017-12-18 16:24:31 -08:00
Alex Crichton
eebe8b21a2 Fix generation for a fn with two string args 2017-12-18 16:13:37 -08:00
Alex Crichton
d38a448f15 Fix a hygiene issue with me 2017-12-18 15:54:43 -08:00
Alex Crichton
ac1acf55ac Fix a typo in passStringToWasm 2017-12-18 15:37:28 -08:00
Alex Crichton
d768b42a64 First pass at implementing functions for browsers 2017-12-18 15:14:13 -08:00
Alex Crichton
ea36df2e01 Rename the cli tool to wasm-bindgen 2017-12-18 15:08:36 -08:00
Alex Crichton
384027088b Install wasm target on CI 2017-12-18 14:55:25 -08:00
Alex Crichton
abb9c845a5 Add CI and a small README 2017-12-18 14:49:04 -08:00
Alex Crichton
ca6cc61fed Add license texts 2017-12-18 14:45:06 -08:00
Alex Crichton
62808e8d99 Add some tests for exceptions 2017-12-18 14:44:09 -08:00
Alex Crichton
6593b5ef69 Classes are now working! 2017-12-18 14:31:01 -08:00
Alex Crichton
7c510a8a7e Start adding support for classes 2017-12-18 12:39:14 -08:00
Alex Crichton
2225942000 Test two macro invocations 2017-12-14 21:56:40 -08:00
Alex Crichton
1b4f10217c Start handling strings 2017-12-14 21:55:21 -08:00
Alex Crichton
d5897c6e56 Test the eventual desired interface 2017-12-14 20:07:26 -08:00
Alex Crichton
d2d9f6be11 Avoid registry/git repo updates in tests
Use the main lockfile as a template, also print out how long each
command takes.
2017-12-14 19:36:41 -08:00
Alex Crichton
2926e6e9f4 Initial commit 2017-12-14 19:31:01 -08:00