joshwd36
b437c9ff46
Implement and use Interpreter::global()
4 years ago
joshwd36
064d8bc352
Make lifetime of return of init static to remove to_string
4 years ago
joshwd36
fa9228684f
Move create_intrinsics to Interpreter and implement Well-Known Symbols
4 years ago
benjaminflin
bbd7dd2945
Implement Array.prototype.reduceRight ( #579 )
4 years ago
HalidOdat
bbed032199
Make `String.prototype.repeat()` ECMAScript specification compliant ( #582 )
4 years ago
HalidOdat
cf253054d9
Fix string prototype `trim` methods ( #583 )
...
* Made trim methods ECMAScript specification compliant
* Added tests
4 years ago
HalidOdat
5d4d8fe794
Refactor Property Descriptor flags ( #553 )
4 years ago
HalidOdat
d8eb7caefd
Extracted `__proto__` from internal slots ( #580 )
4 years ago
HalidOdat
08a608a821
Spec Compliant `Number.prototype.toString()`, better `Number` object formating and `-0` ( #572 )
...
* `Number` object formating and `-0`
* Made `Number.prototype.toString()` spec compliant
* Enabled ignore `toString()` tests
4 years ago
joshwd36
1c1132d8e1
Initial implementation of Map() ( #550 )
...
Co-authored-by: HalidOdat <halidodat@gmail.com>
4 years ago
dependabot[bot]
11e85ebc08
Bump lodash from 4.17.15 to 4.17.19 ( #573 )
...
Bumps [lodash](https://github.com/lodash/lodash ) from 4.17.15 to 4.17.19.
- [Release notes](https://github.com/lodash/lodash/releases )
- [Commits](https://github.com/lodash/lodash/compare/4.17.15...4.17.19 )
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
4 years ago
Richard
e49be361fa
Use correct exponential representation for rational values ( #493 )
...
Co-authored-by: HalidOdat <halidodat@gmail.com>
4 years ago
benjaminflin
3e2e56641e
Implement Array.prototype.reduce ( #555 )
...
Co-authored-by: HalidOdat <halidodat@gmail.com>
4 years ago
joshwd36
690b194b43
Add missing Number methods. ( #562 )
4 years ago
joshwd36
df80ee005b
Ensure tests test error type ( #563 )
4 years ago
joshwd36
ffe8b5f337
Throw a type error when a non-object is called ( #561 )
4 years ago
Iban Eguia
6a721f94ca
Added benchmarks for full program execution ( #560 )
4 years ago
Iban Eguia
8b3d52b5f2
Added benchmark for goal symbol switching ( #556 )
4 years ago
Iban Eguia
84db01ee09
Improved the description of the issue templates ( #554 )
4 years ago
Iovoslav Iovchev
a933ae8ef3
rustyline for the cli ( #492 )
...
Co-authored-by: Iban Eguia <razican@protonmail.ch>
4 years ago
croraf
0fe591b5c5
[builtins - object] Object.create ( #543 )
4 years ago
HalidOdat
1e82e7c95a
Merged `create` into `init` for builtins ( #547 )
4 years ago
HalidOdat
ca0eaeadb2
Removed `console`s dependency of `InternalState` ( #544 )
4 years ago
HalidOdat
5f7ec62306
Made all `Math` methods spec compliant ( #541 )
5 years ago
croraf
641dce1357
Refactor exec/expression into exec/call and exec/new ( #529 )
5 years ago
HalidOdat
fcb4b8b1f1
Cleanup and added test for `String.prototype.concat` ( #538 )
5 years ago
HalidOdat
070b78c357
Feature `SyntaxError` ( #536 )
5 years ago
HalidOdat
357c7d07f7
Fix all `Value` operations and add unsigned shift right ( #520 )
5 years ago
n14little
f957eacbae
fix json.stringify symbol handling ( #535 )
5 years ago
Te-jé Rodgers
d9ef1fb426
add remaining math methods ( #524 ) ( #525 )
...
* add `Math.clz32` method (#524 )
* fix doc urls for clz32
* [#524 ] optimize impl for `Math.clz32`
* [#524 ] add implementation for `Math.expm1()`
* [#524 ] add implementation for `Math.fround()`
* [#524 ] implement `Math.hypot()`
* [#524 ] implement `Math.log1p()`
* [#524 ] implement `Math.imul()`
* improve `Math.clz32()` implementation
* [#524 ] add tests for more states
5 years ago
jasonwilliams
73f65f7800
0.9.0
5 years ago
Jason Williams
29d159739f
Update CHANGELOG.md
5 years ago
Jason Williams
8be0cb55f0
Update CHANGELOG.md
5 years ago
Jason Williams
109efcb3df
v0.9 changelog ( #528 )
...
v0.9
5 years ago
Iban Eguia
477d408c10
Upgraded dependencies before the 0.9 release ( #537 )
5 years ago
Jason Williams
8b40e9eec2
updating docs to add summarize ( #527 )
...
* updating docs to add summarize
* add table
5 years ago
Jason Williams
c4a652a517
Fix sending `this` value to function environments ( #526 )
5 years ago
n14little
3fe894273c
clean up the rest of the math methods ( #523 )
...
* clean up the rest of the math methods
* wrap match with Ok(Value::from(...))
* cargo fmt
5 years ago
Ryan Fickenscher
24418e7520
TypeError when to_object is passed null or undefined ( #518 )
...
Co-authored-by: HalidOdat <halidodat@gmail.com>
5 years ago
HalidOdat
8f8498eac1
`Value` refactor ( #498 )
...
- Refactor `String` => `Rc<str>`
- Refactor `Symbol` => `Rc<Symbol>`
- Refactor `BigInt` => `RcBigInt`
- Changed function signature, from `&mut Value` to `&Value`
- Removed `Interpreter::value_to_rust_number()
- Abstracted `Gc<GcCell<Object>>` to `GcObject`
- Removed unnecessary `Box`s in global environment
- Extracted `extensible` from internal slots
- Made `to_primitive` throw errors
- Removed `strict` parameter in `SameValue` function.
- The `SameValue` function is not dependent on strict mode.
5 years ago
n14little
69f48862ea
update pass through math methods ( #519 )
...
* update pass through math methods
* cargo fmt
5 years ago
HalidOdat
1ac5f205eb
Added arithmetic operation benchmark ( #516 )
5 years ago
Tyler Morten
1ffeb5cbe1
Implement Object.is() method issue #513 ( #515 )
5 years ago
n14little
299a431efe
JSON.stringify(undefined) should return undefined ( #512 )
5 years ago
HalidOdat
a7cffe3c7c
Fixed function call with unspecified arguments ( #506 )
...
Calling a function with less amount of arguments than
the function declaration parameters would `panic`.
5 years ago
n14little
8b431a4a19
434 json parse enumerability ( #504 )
5 years ago
croraf
c19ef724e3
Added undefined property to global scope ( #501 )
5 years ago
HalidOdat
e674da46e7
Fixed global objects initialization order ( #502 )
5 years ago
croraf
4ae939ac52
[ReferenceError] complete solution ( #488 )
5 years ago
neeldug
b43e92afa5
Added error propagation in Field access ( #500 )
5 years ago