Jason Williams
5a90e32888
cargo fmt
5 years ago
Jason Williams
2df9a24011
Adding object internal methods ( #96 )
...
* adding internal methods
* adding more methods
* Property refactored for optional fields, Docker container now working for debugging
* working through object internal methods
5 years ago
Jason Williams
927bd2ba1a
updates deps
5 years ago
Sophie Tauchert
5e7df4f3cb
Add support for regex literals ( #94 )
...
* Implement regex literal lexing
* Add parser support for regex literals
* Implement very basic RegExp object
* Fix escaping a backslash
* Store rust structs as internal state in objects
* Remove unnecessary regexp constant
* Implement RegExp.test()
* Implement properties on RegExp
* Implement RegExp.exec()
* Implement RegExp.toString()
* Rename RegularExpression to RegularExpressionLiteral
5 years ago
Olle Sandberg
6d81538969
Allow to re-assign value to an existing binding. ( #92 )
5 years ago
Sophie Tauchert
8af9945dde
Implement setting global values ( #93 )
...
* Use builder pattern to create interpreter
* Add method to initialize global object
* Run rustfmt to fix CI build
* Run rustfmt beta to fix CI build
5 years ago
Jason Williams
f90f976732
move Property to its own module
5 years ago
Matt
4b70af6232
Spelling edit to file names, functions, and vars: decler* -> declar* ( #87 )
5 years ago
Jason Williams
c5b75c55ad
passing primitives to methods ( #86 )
...
* passing primitives to methods
* finishing unboxing_primitives, tests added, using internal_slots for __proto__
5 years ago
Jason Williams
903cbcdccc
Adding operations ( #85 )
...
* adding operations to exec
* using StringData instead of PrimitiveData (to match with spec)
* function signature changed to allow mutable ctx (this is needed for some functions)
* tidy (clippy)
* value to rust string (clippy)
* removing static lifetime - Not needed from Rust 1.36
5 years ago
Jason Williams
111d232c94
clippy changes, including benchmark updates for more accuracy, fixes #84
5 years ago
Jason Williams
c23a7b1f4a
0.3.0
6 years ago
Callum Ward
0ecfd0e02b
String and Array specific console.log formats ( #68 )
...
* Add Array and String specific console.log format
* Fix rustfmt warnings
* Fix cargo fmt warnings
* Tiny rustfmt markup
6 years ago
KrisChambers
0a46bdbe04
Is property key implementation ( #72 ) ( #79 )
...
* Implemented Property::is_property_key static function.
* Fixed rust formating.
6 years ago
Jason Williams
fe42b0c616
adding context into every native function, changing this to be passed… ( #73 )
6 years ago
Arun Kumar
ee76d784f3
Fix typo ( #78 )
6 years ago
SasakiSaki
9110254232
Unit testing for Array and String ( #63 )
...
* Make interpreter engine reusable
* Testing Array.prototype.join()
* Testing Array.prototype.concat()
* Fix format problems
* Testing String.prototype.length
* Testing String.prototype.concat()
* Try to fix String.prototype.length
* Testing String.prototype.repeat()
* Testing String.prototype.startsWith()
* Testing String.prototype.endsWith()
* Remove unnecessary `dbg!`
6 years ago
Iban Eguia
7defcdd11f
Added license files ( #77 )
6 years ago
Jason Williams
71c8a07e0c
adding benchmarks ( #76 )
6 years ago
Zach Gotsch
c8da85f52e
Clean dist ( #62 )
...
* Clean /dist as part of webpack build
* Don't track /dist
6 years ago
Callum Ward
9e6389e032
Implementation of Array.prototype.{shift(), unshift(), reverse()} ( #67 )
6 years ago
Iban Eguia
d7b32ed64e
Added MIT/Unlicense licenses ( #65 )
...
Also updated Cargo.toml to adapt it to the common license syntax,
and upgraded dependencies. I also had to remove the check for unsafe
code, but this might need some extra care (using a feature or something
in that sense).
6 years ago
Jason Williams
860bace8e8
fix string clippy errors
6 years ago
Jason Williams
0de110a82c
fixing formatting
6 years ago
Jason Williams
2427b3b755
fixing master
6 years ago
Jason Williams
0e92d37756
Refactor objects ( #69 )
...
Refactoring Objects into Structs. Changing the way objects are accessed.
New `internal_slots` and `sym_properties` fields
6 years ago
Zach Gotsch
b891ac3b9b
Parse array elisions and trailing commas ( #58 )
...
* Parse array elisions and trailing commas
* cargo fmt
6 years ago
Callum Ward
0885e0018b
Implement String.prototype.{padStart(), padEnd()} ( #56 )
...
* Implement String.prototype.{padStart(), padEnd()}
* Fix formatting
6 years ago
Iban Eguia
b5bd54293b
Updated the definition of constant declarations, it fixes #46 ( #60 )
6 years ago
Iban Eguia
71340e6bec
Fixed a bunch of Clippy issues ( #59 )
...
* Fixed a bunch of Clippy issues
* Fixed bug with numbers
* Added clippy checks in the CI
6 years ago
Callum Ward
1c69da1dfa
Implement Array.prototype: concat(), push(), pop() and join() ( #52 )
...
* First draft of Array prototype object
* First draft of Array prototype object
* Update to working Array object
* Remove unneeded HashMap import
* Fix indexing by removing private internal HashMap
* Fix formatting issues with cargo fmt
* Implement Array.prototype.concat()
* Implement Array.prototype.concat()
* Cargo format fix
* Implement push, pop and join
* Add documenation links to new methods
6 years ago
Atul Bhosale
bf9b78954a
Use 'dyn' since trait objects without an explicit 'dyn' are deprecated ( #53 )
6 years ago
Iban Eguia
14672dd340
Parser tests ( #42 )
...
* First parser tests
* Added more parser tests
* Fixed formatting issue
* Added bitwise operators, removed debugging statement
6 years ago
Callum Ward
1455ef0dc6
Implement bare Array object with prototype field ( #51 )
...
* First draft of Array prototype object
* First draft of Array prototype object
* Update to working Array object
* Remove unneeded HashMap import
* Fix indexing by removing private internal HashMap
* Fix formatting issues with cargo fmt
6 years ago
Jason Williams
0eeb76f3da
Update README.md
...
Adding communication
6 years ago
Jason Williams
26ba6a673d
Update CONTRIBUTING.md
...
Adding Discord server link
6 years ago
Jason Williams
d07068aa0a
Update README.md
6 years ago
Jason Williams
efd183d0c9
Update README.md
...
Remove JIT
6 years ago
Jason Williams
ace1588a94
add fmt check in travis fixes #43 ( #44 )
...
* testing travis
* add tests back in
6 years ago
Jason Williams
b8c7e935b6
Update CONTRIBUTING.md
...
Adding debugging help
6 years ago
Callum Ward
28774ff973
Add abilityto specify a file to read from ( #41 )
6 years ago
Jason Williams
6d7aadd2f3
adding Contributing guide
6 years ago
Jason Williams
2cc4c6fafb
next is already sitting at correct token, no need to advance. Fixes #38
6 years ago
Jason Williams
8bc9aaa8e6
updating wasm build to reflect v1.2.1
6 years ago
Jason Williams
c8d1f93dc6
updating version
6 years ago
Atul Bhosale
313fe0a390
Change all r#try! to ? ( #37 )
6 years ago
Callum Ward
fda8571e52
concat(), repeat(), slice() and all "searchString" based String prototype methods ( #13 ) ( #31 )
...
* New concat() and repeat() String prototype implementations
Created new implementations for the JS String prototype which are added
in the string.rs file. Currently not tested.
* Add additional implementation of slice()
* Fix typo which mixed up start and end of slice
* Simplify slice() implementation
* Implementation of String.prototype.startsWith()
* Add implementation of endsWith()
* Implementation of String.prototype.includes()
* Implementation of String.prototype.{indexOf, lastIndexOf}()
* Fix merge conflict missing closing brace
6 years ago
Lennart Buit
5cfa527729
Add trim/trimStart/trimEnd to string prototype ( #30 )
6 years ago
Damian Senn
2b334a21d1
Allow numbers without decimal digits to be followed by a dot ( #27 )
6 years ago
Damian Senn
3aa4d4091b
Fix some cases in value is_true() ( #28 )
6 years ago