Commit Graph

47 Commits

Author SHA1 Message Date
Alex Crichton
a949482e3a
Remove usage of #[wasm_custom_section] (#509)
This has been stabilized on nightly as `#[link_section]`, so no need for an
unstable attribute any more. Yay!
2018-07-19 08:57:18 -05:00
Sendil Kumar N
bc474aceba Expose math.random, string.endswith, string.normalize, string.repeat, escape() JSBindings (#499)
* add math.random

* add ends with

replace length with variable

* add normalize

* add repeat

* add escape
2018-07-18 09:56:15 -05:00
Alex Crichton
ed05c7b945
Fix compile on latest nightly (#489) 2018-07-17 09:11:30 -05:00
Liigo Zhuang
79f53b567b js::DataView binding 2018-07-12 09:55:33 +08:00
Nick Fitzgerald
21cb50ef05
Merge pull request #412 from matiasinsaurralde/intl
Add bindings for `Intl`
2018-07-09 10:31:22 -07:00
Liigo Zhuang
bfec9e6401 bindings for parseInt/parseFloat (#384)
* parseInt, parseFloat, JsValue::is_nan

* Number.parseInt, Number.parseFloat

* remove `JsValue::is_nan`

* parse_int/float returns f64
2018-07-09 08:59:54 -05:00
Alexander Kryvomaz
6758525980 bindings for isFinite(), Number.isFinite() and Number.isSafeInteger() (#420)
* bindings for isFinite()

* bindings for Number.isFiniter(), refactoring of Number.isInteger()

* bindings for Number.isSafeInteger()
2018-07-08 10:03:10 -05:00
Matias Insaurralde
8352b4610f
Add bindings for Intl.getCanonicalLocales 2018-07-07 08:00:22 -04:00
Marcin Baraniecki
c9f4a266b0
Merge pull request #386 from jannikkeye/bindings-reflect
Reflect.xx bindings
2018-07-06 13:34:59 +02:00
Marcin Baraniecki
f7dc819289
Merge pull request #387 from Hywan/webassembly
feat(js) Implement the `WebAssembly.validate` binding.
2018-07-06 13:33:37 +02:00
Jannik Keye
99d66ad6ed merge master 2018-07-06 09:31:58 +02:00
Satoshi Amemiya
2518048f25 Add support Symbol.hasInstance as sample of static prop getter 2018-07-06 14:57:17 +09:00
Stephan Renatus
2b8e789c9c Bindings for Proxy.new()
Signed-off-by: Stephan Renatus <srenatus@chef.io>
2018-07-05 08:04:41 +02:00
Alex Crichton
efa4a2b8fa
Speed up Travis by running Webpack in fewer tests (#381)
* Reorganize Travis configuration

* Add a `JOB` env var descriptor to all matrix entries. Not used anywhere but is
  useful when viewing the whole build on Travis's web interface.
* Reorganize where builds are located, moving slow builds first and fast ones
  last.
* Change checking the CLI builds from `cargo build` to `cargo check`
* Use YAML references to reduce some duplication

* Print some more timing statistics for each test

* Extract `Project` helper in tests to a module

This'll help make it a bit more extensible over time. At the same time the
methods are also slightly reorganized to read more clearly from top to bottom.

* Migrate all tests away from Webpack

Wepback can take a significant amount of time to execute and when it's
multiplied by hundreds of tests that adds up really quickly! After investigating
Node's `--experimental-modules` option it looks like it's suitable for our use
so this switches all tests to using JS files (moving away from TypeScript as
well) with `--experimental-modules` with Node.

Tests will be selectively re-enabled with webpack and node.js specific output
(that doesn't require `--experimental-modules`), coming in later commits.

* Restore the node test for node.js output

Ensures it's workable as-is

* Only generate typescript with webpack

* Only read wasm files for webpack

* Skip package.json/node_modules for now

* Only generate webpack config if needed

* Start a dedicated test module for typescript

Will hopefully verify the generated Typescript compiles OK.

* Remove unneeded `node` method

* Fixup some rebase conflicts

* Don't run asmjs example on travis

* Fixup generator tests

* Attempt to fix windows

* Comment windows fix

* More test fixes

* More exclusions

* More test fixes

* Relax eslint regex

Catch mjs modules as well

* Fix eslint

* Speed up travis on examples slightly
2018-07-04 22:37:09 -05:00
Ivan Enderlin
43de00b347 feat(js) Add ArrayBuffer::new, ::is_view & ::slice bindings. (#388)
* feat(js) Add `ArrayBuffer::new`, `::is_view` & `::slice` bindings.

* fix(js) Fix number units, comments, add `slice_with_end`.

* test(js) Fix a function name.
2018-07-04 13:53:49 -05:00
Ivan Enderlin
fe25a9a268
feat(js) Implement the WebAssembly.validate binding. 2018-07-04 15:27:01 +02:00
Jannik Keye
592d426e4f feat: add Reflect.apply 2018-07-04 11:43:34 +02:00
Alexander Kryvomaz
6e95ba20f1 bindings for Generator.next() 2018-07-03 23:42:49 +03:00
Alexander Kryvomaz
609bf34d60 bindings for encodeURIComponent 2018-07-01 15:59:12 +03:00
Alexander Kryvomaz
0f07dd9048 bindings for decodeURIComponent 2018-07-01 15:53:44 +03:00
Satoshi Amemiya
f9c804db20 Add support for js::Error 2018-06-29 23:24:46 +09:00
Nick Fitzgerald
5ff6329d29
Merge pull request #349 from jannikkeye/bindings-map
Add bindings for Map.xx
2018-06-28 15:46:07 -07:00
Nick Fitzgerald
e31da84bce
Merge pull request #340 from ohanar/rustfmt
Use rustfmt for standarized formatting
2018-06-28 15:17:23 -07:00
Jannik Keye
d868ff26ef Add bindings for Set.xx (#347)
* feat(Set): add Set.add

* feat(Set): add Set.clear

* feat(Set): add Set.delete

* feat(Set): add Set.has

* feat(Set): add Set.new

* feat(Set): add Set.size

* feat(Set/SetIterator): add Set.entries

* feat(Set/SetIterator): add Set.keys

* feat(Set/SetIterator): add Set.values
2018-06-28 15:57:49 -05:00
Jannik Keye
228abaa4ae feat(Map/MapIterator): add Map.entries 2018-06-28 21:58:34 +02:00
Jannik Keye
ab0546963b feat(Map): add Map.clear 2018-06-28 21:51:39 +02:00
R. Andrew Ohana
9127a0419f rustfmt all the things 2018-06-27 22:42:34 -07:00
Nick Fitzgerald
40722b7ae3
Merge pull request #333 from Hywan/js_boolean
feat(js) Implement `Boolean` bindings.
2018-06-27 14:36:00 -07:00
Dimitrii Nemkov
a0dda505d9 Added WeakSet constructor 2018-06-27 13:15:47 +05:00
Ivan Enderlin
91bc7a199c
feat(js) Implement Boolean bindings.
Cf https://github.com/rustwasm/wasm-bindgen/issues/275.
2018-06-27 09:07:47 +02:00
Nick Fitzgerald
919c2bedac
Merge pull request #318 from xeqlol/weakmap-bindings
WeakMap bindings
2018-06-26 12:55:30 -07:00
Alexander Kryvomaz
48061aaab6 bindings for Function.prototype.apply() and Function.prototype.toString() 2018-06-26 21:35:28 +03:00
Dimitrii Nemkov
a6d62c696f Merge branch 'master' into weakmap-bindings 2018-06-26 23:29:48 +05:00
Nick Fitzgerald
6dcbc4a0cc
Merge branch 'master' into date 2018-06-26 10:25:26 -07:00
Sendil Kumar
cd189d53c4 Add date value of 2018-06-26 16:55:36 +02:00
xeqlol
a369f7a246 WeakMap bindings 2018-06-26 13:12:32 +05:00
Tim Ryan
5925871a05 Adds support for the UInt8Array constructor and its fill method. 2018-06-26 00:34:17 -04:00
Jonathan Sundqvist
9633642e6e Add abs to Math 2018-06-25 22:52:04 +02:00
R. Andrew Ohana
35c5dafdd2 js globals: return JsString rather than String 2018-06-23 17:15:13 -07:00
Nick Fitzgerald
b1cbb56224
Merge branch 'master' into master 2018-06-23 16:19:08 -07:00
Alexander Kryvomaz
9e07c4935c bindings for Function.length and Function.name 2018-06-23 23:41:28 +03:00
Jonathan Sundqvist
a7f8e071fe Add the binding valueOf to number 2018-06-23 14:43:43 +02:00
kzvi
5ae6ee7aec add JsString binding to src/js.rs and tests 2018-06-22 17:51:44 -07:00
Matt Long
4cc73877a6 add binding for keys method 2018-06-21 17:00:02 -04:00
Matt Long
4a96ba3c72 add binding for indexOf 2018-06-20 17:23:38 -04:00
Nick Fitzgerald
7b0e779ffd test: remove unnecessary test.ts files
The testing infrastructure will add exactly this default `test.ts` when it isn't
explicitly specified.
2018-06-19 10:17:42 -07:00
Nick Fitzgerald
a201cafdea test: Move Object-related js_globals tests to submodule file 2018-06-19 10:15:09 -07:00