João Borges
667a820dee
Introduce PropertyKey for field acces, fix #172 (quotes around displayed strings) ( #373 )
...
Co-authored-by: HalidOdat <halidodat@gmail.com>
4 years ago
HalidOdat
24a72ea847
Added keyword and operator colors and matching bracket validator to cli ( #590 )
4 years ago
HalidOdat
795adc519a
Better error formatting and cli color ( #586 )
4 years ago
KashParty
2df2db3c2f
Removed trailing comma
4 years ago
KashParty
cce0626f17
Added tests
4 years ago
KashParty
dbb39862d6
Added comma operator
4 years ago
joshwd36
2de11ee487
Add comment
4 years ago
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 )
4 years ago
croraf
641dce1357
Refactor exec/expression into exec/call and exec/new ( #529 )
4 years ago
HalidOdat
fcb4b8b1f1
Cleanup and added test for `String.prototype.concat` ( #538 )
4 years ago
HalidOdat
070b78c357
Feature `SyntaxError` ( #536 )
4 years ago
HalidOdat
357c7d07f7
Fix all `Value` operations and add unsigned shift right ( #520 )
4 years ago
n14little
f957eacbae
fix json.stringify symbol handling ( #535 )
4 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
4 years ago
jasonwilliams
73f65f7800
0.9.0
4 years ago
Jason Williams
29d159739f
Update CHANGELOG.md
4 years ago
Jason Williams
8be0cb55f0
Update CHANGELOG.md
4 years ago
Jason Williams
109efcb3df
v0.9 changelog ( #528 )
...
v0.9
4 years ago
Iban Eguia
477d408c10
Upgraded dependencies before the 0.9 release ( #537 )
4 years ago
Jason Williams
8b40e9eec2
updating docs to add summarize ( #527 )
...
* updating docs to add summarize
* add table
4 years ago
Jason Williams
c4a652a517
Fix sending `this` value to function environments ( #526 )
4 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
4 years ago
Ryan Fickenscher
24418e7520
TypeError when to_object is passed null or undefined ( #518 )
...
Co-authored-by: HalidOdat <halidodat@gmail.com>
4 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.
4 years ago
n14little
69f48862ea
update pass through math methods ( #519 )
...
* update pass through math methods
* cargo fmt
4 years ago
HalidOdat
1ac5f205eb
Added arithmetic operation benchmark ( #516 )
4 years ago
Tyler Morten
1ffeb5cbe1
Implement Object.is() method issue #513 ( #515 )
4 years ago