Iban Eguia
8fde98afa9
Add ECMAScript test suite (test262) ( #567 )
4 years ago
Paul Lancaster
cb93472b4a
New lexer ( #559 )
...
Co-authored-by: HalidOdat <halidodat@gmail.com>
Co-authored-by: Iban Eguia <razican@protonmail.ch>
Co-authored-by: Paul Lancaster <paul@lancasterzone.com>
Co-authored-by: neeldug <5161147+neeldug@users.noreply.github.com>
4 years ago
HalidOdat
b42dd4cd8b
Index `PropertyKey`, `Object` iterators and symbol support ( #603 )
...
* Index `PropertyKey`, `Object` iterators and `Symbol` indexing support.
* PR feedback
4 years ago
HalidOdat
d025207fc1
Feature `boa::Result<T>` ( #637 )
4 years ago
HalidOdat
c5b708b2ef
Moved value operations from `Interpreter` to `Value` ( #625 )
4 years ago
54k1
91d9100ad9
Set __proto__ of function instances ( #604 )
4 years ago
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
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
5d4d8fe794
Refactor Property Descriptor flags ( #553 )
4 years ago
HalidOdat
d8eb7caefd
Extracted `__proto__` from internal slots ( #580 )
4 years ago
joshwd36
1c1132d8e1
Initial implementation of Map() ( #550 )
...
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
HalidOdat
1e82e7c95a
Merged `create` into `init` for builtins ( #547 )
4 years ago
HalidOdat
357c7d07f7
Fix all `Value` operations and add unsigned shift right ( #520 )
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
8b431a4a19
434 json parse enumerability ( #504 )
4 years ago
croraf
c19ef724e3
Added undefined property to global scope ( #501 )
4 years ago
HalidOdat
df13272fc0
Object specialization ( #419 )
4 years ago
croraf
5a45ab532e
[NaN] handle NaN token as identifier ( #475 )
4 years ago
Jason Williams
32b0741cc8
Profiler using measureme ( #317 )
...
Profiler
4 years ago
HalidOdat
bb2b6f638c
Added `TypeError` implementation ( #442 )
4 years ago
HalidOdat
5e71718928
Specification compliant `ToString` (`to_string`) ( #425 )
4 years ago
HalidOdat
d42e413f8a
Fixed function object constructable/callable ( #409 )
...
- Maded arrow functions non-constructable
- Simplified Function object and removed FunctionKind
- Rnamed create_ordinary -> ordinary, create_builtin -> builtin
- Added name and length properties in global objects
4 years ago
Iban Eguia
4beadfc9ad
Execution and Node modularization ( #392 )
4 years ago
Jason Williams
63f37a2858
implement "this" ( #320 )
...
* implement this
* remove construct/call from Object instead set func
* get_this_binding() was wrong, fixed
* BindingStatus is now properly set
* `this` now works on dynamic functions
* Migrates all builtins to use a single constructor/call fucntion to match the spec
* Ensure new object has an existing prototype
* create_function utility
* needing to clone before passing through
4 years ago
hello2dj
402041d432
impl abstract-equality-comparison ( #395 )
4 years ago
HalidOdat
1e18cb02d0
Value refactor ( #383 )
4 years ago
HalidOdat
35f5f0b5b3
Code cleanup ( #372 )
4 years ago
Jason Williams
f02babf0bd
Refactor old function with new function object ( #255 )
...
Co-authored-by: Iban Eguia <iban.eguia@cern.ch>
Co-authored-by: Jason Williams <jwilliams720@bloomberg.net>
Co-authored-by: Iban Eguia <iban.eguia@cern.ch>
4 years ago
HalidOdat
dd0f9678ee
fix #209 "Calling Array with one argument" ( #328 )
...
* fix issue 209 "Calling Array with one argument"
* Update boa/src/builtins/array/mod.rs
Co-Authored-By: Iban Eguia <razican@protonmail.ch>
* Changed from unimplemented to panic in array
Co-authored-by: Iban Eguia <razican@protonmail.ch>
4 years ago
HalidOdat
84b4da545a
Fix #331 "We only get `Const::Num`, never `Const::Int`" ( #338 )
4 years ago
HalidOdat
b525f68ff6
Added documentation to RegExp
4 years ago
HalidOdat
b8fe3545c8
Added documentation to builtins/array
4 years ago
HalidOdat
c365576f37
Implemented the Array.prototype.some method. ( #280 )
...
- Implementd Array.prototype.some method.
- Added tests for Array.prototype.some method.
4 years ago
Jason Williams
48c6e886d4
Parser fixes #225 #240 #273 ( #281 )
...
New parser!
Plus loads of tidy up in various places.
Co-authored-by: Jason Williams <jwilliams720@bloomberg.net>
Co-authored-by: HalidOdat <halidodat@gmail.com>
Co-authored-by: Iban Eguia <iban.eguia@cern.ch>
Co-authored-by: Iban Eguia <razican@protonmail.ch>
4 years ago
Nick Vernij
6fa8d484a9
Implement Array.prototype.filter ( #262 )
4 years ago
Jason Williams
9766409c52
Addition of forEach() ( #268 )
...
* Addition of forEach()
* fixing LLDB launcher for windows (it needs .exe to work for windows)
4 years ago
Iban Eguia
86052d6d75
Moved test modules to their own files ( #258 )
4 years ago