Commit Graph

1737 Commits

Author SHA1 Message Date
96a70c41be reset_indentation: Don't emit indentation on blank lines
This resulted in trailing whitespace in the generated file. In addition
to wasting space in a file that gets served over the wire, this also
gets highlighted as a problem when reviewing the generated file in an
editor that highlights trailing whitespace.
2018-09-13 22:13:07 -07:00
1c52fb1b2f Remove leading and trailing blanks from the --no-modules output
The output using modules already uses string formatting that carefully
avoids emitting leading and trailing blanks; adjust the --no-modules
output to match.
2018-09-13 22:10:59 -07:00
05a0a5c6a1 Merge pull request #825 from fitzgen/paint-table-of-contents
guide: Add paint example to the table of contents
2018-09-13 18:21:03 -07:00
59f551f504 Merge pull request #824 from chinedufn/travis
Change CI example to use a release binary
2018-09-13 17:01:07 -07:00
fa5551d91f guide: Add paint example to the table of contents 2018-09-13 16:36:57 -07:00
17db217fe9 Change CI example to use a releaase binary 2018-09-13 19:06:31 -04:00
dcb783741c Merge pull request #823 from afdw/master
Add a section to the guide about the Paint example
2018-09-13 15:34:05 -07:00
97fc9b64f8 Add a section to the guide about the Paint example 2018-09-14 00:46:53 +03:00
e1ea897d2f Merge pull request #820 from afdw/master
Add paint example
2018-09-12 17:52:26 -07:00
b9cc8e1270 Use Cell instead of RefCell 2018-09-13 03:38:22 +03:00
2fc499d66d Merge pull request #819 from fitzgen/webidl-interfaces-should-extend-object
webidl: All interfaces implicitly extend `Object`
2018-09-12 16:21:48 -07:00
62b04e44c4 Add paint example 2018-09-13 02:10:36 +03:00
c6ede65856 Merge pull request #818 from fitzgen/guide-wasm-bindgen-test
guide: Add documentation for testing with `wasm-bindgen-test`
2018-09-12 15:40:31 -07:00
e2e815a477 guide: Add documentation for testing with wasm-bindgen-test 2018-09-12 15:40:09 -07:00
93a510ef93 webidl: All interfaces implicitly extend Object
This information is embedded within the algorithm for constructing interfaces
and their prototypes in the section for ECMAScript glue in the WebIDL spec...

This really *should* make the `wasm_bindgen_backend::ast::ImportType::extends`
member from a `Vec<Ident>` into a `Vec<syn::Path>` so that we could use
`js_sys::Object` in the extends field, but that is a huge pain because then the
`ImportedTypes` trait needs to be changed, and all of its implementers, etc...
2018-09-12 15:25:09 -07:00
587a703b3e Merge pull request #816 from alexcrichton/crufty-appveyor
Remove some crufty AppVeyor configuration
2018-09-12 23:42:33 +02:00
3929e371dd ci: remove hack for broken libLLVM.so in nightly 2018-09-12 14:09:00 -07:00
4e86ecd2c5 Merge pull request #813 from fitzgen/duck-typed-interfaces
Duck typed interfaces
2018-09-12 11:20:26 -07:00
22b3c37112 Remove some crufty AppVeyor configuration
The `crt-static` feature should be long since stable as well as incremental
compilation.
2018-09-12 11:08:19 -07:00
fd75280ef5 Another attempt to fix CI 2018-09-12 10:39:26 -07:00
a59a10d6df Fix tests on nightly 2018-09-12 10:20:03 -07:00
73e6191b60 Merge pull request #703 from lnicola/guide-publish-app
Guide: explain how to deploy the applicaton to a web server
2018-09-12 09:33:39 -07:00
e5af22ee4e Merge pull request #814 from brisad/object-define-property
Add binding for Object.defineProperty()
2018-09-12 09:13:03 -07:00
fe6ad5447e Add binding for Object.defineProperty() 2018-09-12 07:39:39 +02:00
1872e84a8a guide: Add section on working with duck-typed interfaces 2018-09-11 16:40:32 -07:00
a311c29f1d examples: Add an example of using duck-typed interfaces 2018-09-11 16:29:25 -07:00
9ca024a812 Merge pull request #792 from afdw/master
Add support for variadic arguments in WebIDL
2018-09-11 16:05:56 -07:00
89989b5973 Merge pull request #812 from fitzgen/guide-untyped-properties
guide: Add section on accessing properties of untyped values
2018-09-11 15:55:11 -07:00
27a7008764 guide: Add section on accessing properties of untyped values
Part of #616
2018-09-11 15:26:51 -07:00
096848199e Introduce a constant 2018-09-11 23:10:03 +03:00
1d2d397f55 Merge pull request #808 from fitzgen/web-sys-in-the-guide
web-sys gets its own section in the guide
2018-09-11 10:08:06 -07:00
3f92607be2 Merge pull request #810 from Tarnadas/doc/js-sys-function
doc: Add number suffix hint for JS function calls
2018-09-11 10:04:20 -07:00
8124cffeba Merge pull request #809 from Tarnadas/master
doc: Add nightly feature hint for closures
2018-09-11 10:02:53 -07:00
89005f3469 Examples: use html-webpack-plugin 2018-09-11 08:42:22 +03:00
84a477d78d doc: Add number suffix hint for JS function calls 2018-09-11 07:25:08 +02:00
e6fe9cf353 doc: Add nightly feature hint for closures
resolves #767
2018-09-11 07:06:21 +02:00
8ffa24bfe5 Guide: explain how to deploy the application 2018-09-11 07:33:24 +03:00
f6b199cfb0 web-sys: Crate metadata should point to the web-sys section of the wasm-bindgen guide 2018-09-10 17:56:03 -07:00
86796f8a03 guide: Add a user-facing web-sys section 2018-09-10 17:51:44 -07:00
723ed6e856 examples(fetch): Tidy up the fetch example 2018-09-10 17:50:55 -07:00
42ea38187f examples(webaudio): Tidy up the webaudio example 2018-09-10 17:50:34 -07:00
e730ee9a62 guide: update publishing new releases page 2018-09-10 15:37:12 -07:00
1a39e4e737 guide: Fix nesting of contributing pages 2018-09-10 15:32:39 -07:00
9f4ed536df Use js_sys::Array, generate _n methods for ergonomics 2018-09-11 00:37:59 +03:00
9147e3211e Merge pull request #805 from alexcrichton/callback-interfaces
Implement WebIDL callback interfaces
2018-09-10 12:48:24 -07:00
8181f7fa95 Implement WebIDL callback interfaces
This commit implements callback interfaces for WebIDL, the final WebIDL
construct that we were unconditionally ignoring! Callback interfaces are
implemented as dictionaries of callbacks. Single-operation callback interfaces
are also expanded when flattening to accept a `Function` as well, in accordance
with the WebIDL spec.

New features have been added to `web-sys` for all the new callback interface
types. Additionally the `EventTarget.webidl` was tweaked to not have
`EventListener?` as this is required for all functional usage and there's no
need to keep that sort of web browser compat here.

Closes #258
2018-09-10 12:00:50 -07:00
2cf82bc0b3 Merge pull request #803 from alexcrichton/fix-required
Change how filtering is done in WebIDL
2018-09-10 11:59:36 -07:00
116a19962f Change how filtering is done in WebIDL
Instead of actually modifying the `FirstPassRecord` let's instead just skip
relevant entries when we come across them. This should help us retain knowledge
that `optional SomeImportedType arg` can be bound even though `SomeImportedType`
may not exist.

One small tweak was needed to modify the AST afterwards to remove `extends`
annotations which aren't actually defined, but other than that this should...

Closes #802
2018-09-10 11:58:31 -07:00
be4ead7c8a Merge pull request #797 from alexcrichton/iterator
Implement the `Iterator` trait for JS iterators
2018-09-10 11:40:56 -07:00
1565951a0b Merge pull request #804 from alexcrichton/bigint
Expand LongLong to `(i32 or f64)` instead of `i64`
2018-09-10 11:40:35 -07:00