Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add documentation to GcObject methods #661

Merged
merged 2 commits into from
Aug 27, 2020
Merged

Add documentation to GcObject methods #661

merged 2 commits into from
Aug 27, 2020

Conversation

HalidOdat
Copy link
Member

It changes the following:

  • Added documentation to GcObject methods
  • Added type aliases Ref and RefMut to abstract the gc.

@HalidOdat HalidOdat added enhancement New feature or request documentation update documentation labels Aug 25, 2020
@HalidOdat HalidOdat added this to the v0.10.0 milestone Aug 25, 2020
@codecov
Copy link

codecov bot commented Aug 25, 2020

Codecov Report

Merging #661 into master will not change coverage.
The diff coverage is 100.00%.

Impacted file tree graph

@@           Coverage Diff           @@
##           master     #661   +/-   ##
=======================================
  Coverage   72.69%   72.69%           
=======================================
  Files         179      179           
  Lines       13409    13409           
=======================================
  Hits         9748     9748           
  Misses       3661     3661           
Impacted Files Coverage Δ
boa/src/builtins/object/mod.rs 39.17% <ø> (ø)
boa/src/builtins/object/gcobject.rs 73.87% <100.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update c7531af...729eeab. Read the comment docs.

@HalidOdat HalidOdat changed the title Add documentation to GcObject Add documentation to GcObject methods Aug 25, 2020
@github-actions
Copy link

Benchmark for 16c4339

Click to view benchmark
Test PR Benchmark Master Benchmark %
Arithmetic operations (Execution) 368.1±8.80ns 379.6±14.44ns -3.03%
Arithmetic operations (Full) 251.4±4.38µs 250.7±4.22µs +0.28%
Array access (Execution) 8.2±0.19µs 8.6±1.96µs -4.65%
Array access (Full) 270.4±9.09µs 275.8±10.78µs -1.96%
Array creation (Execution) 3.5±0.08ms 3.6±0.15ms -2.78%
Array creation (Full) 3.7±0.06ms 3.8±0.08ms -2.63%
Array pop (Execution) 1233.5±32.55µs 1258.4±61.28µs -1.98%
Array pop (Full) 1578.6±25.75µs 1617.6±28.80µs -2.41%
Boolean Object Access (Execution) 4.8±0.11µs 4.8±0.09µs 0.00%
Boolean Object Access (Full) 263.3±4.80µs 264.0±9.88µs -0.27%
Clean js (Execution) 743.0±14.02µs 771.5±26.96µs -3.69%
Clean js (Full) 1025.5±11.96µs 1050.6±42.44µs -2.39%
Clean js (Parser) 24.5±0.40µs 24.9±1.89µs -1.61%
Create Realm 467.7±14.28ns 507.8±30.72ns -7.90%
Dynamic Object Property Access (Execution) 5.3±0.16µs 5.5±0.25µs -3.64%
Dynamic Object Property Access (Full) 261.5±7.31µs 268.2±11.43µs -2.50%
Expression (Lexer) 2.3±0.06µs 2.4±0.04µs -4.17%
Expression (Parser) 5.4±0.15µs 5.4±0.10µs 0.00%
Fibonacci (Execution) 805.2±16.55µs 821.7±21.30µs -2.01%
Fibonacci (Full) 1094.1±26.62µs 1113.1±38.56µs -1.71%
For loop (Execution) 22.5±0.79µs 22.9±0.74µs -1.75%
For loop (Full) 287.4±33.09µs 289.4±10.90µs -0.69%
For loop (Lexer) 4.3±0.13µs 4.3±0.08µs 0.00%
For loop (Parser) 12.3±0.19µs 12.6±0.32µs -2.38%
Goal Symbols (Parser) 8.6±0.28µs 8.6±0.31µs 0.00%
Hello World (Lexer) 867.6±15.95ns 858.3±16.39ns +1.08%
Hello World (Parser) 2.2±0.08µs 2.2±0.02µs 0.00%
Long file (Parser) 6.3±0.12ms 6.4±0.12ms -1.56%
Mini js (Execution) 668.9±9.08µs 689.3±18.52µs -2.96%
Mini js (Full) 952.2±19.75µs 950.4±18.69µs +0.19%
Mini js (Parser) 22.0±0.22µs 22.0±0.36µs 0.00%
Number Object Access (Execution) 3.8±0.10µs 3.8±0.07µs 0.00%
Number Object Access (Full) 263.4±22.99µs 261.9±10.00µs +0.57%
Object Creation (Execution) 4.5±0.08µs 4.6±0.16µs -2.17%
Object Creation (Full) 312.0±7.16µs 314.1±3.64µs -0.67%
RegExp (Execution) 65.9±1.95µs 68.8±3.85µs -4.22%
RegExp (Full) 413.5±9.59µs 414.5±9.53µs -0.24%
RegExp Literal (Execution) 71.2±4.97µs 70.7±2.48µs +0.71%
RegExp Literal (Full) 343.6±12.45µs 337.6±6.96µs +1.78%
RegExp Literal Creation (Execution) 66.4±2.42µs 68.2±3.94µs -2.64%
RegExp Literal Creation (Full) 406.9±13.16µs 416.5±24.05µs -2.30%
Static Object Property Access (Execution) 4.8±0.09µs 4.8±0.16µs 0.00%
Static Object Property Access (Full) 258.9±7.21µs 267.1±8.65µs -3.07%
String Object Access (Execution) 6.9±0.10µs 7.0±0.24µs -1.43%
String Object Access (Full) 265.1±5.82µs 265.5±6.50µs -0.15%
String comparison (Execution) 6.4±0.27µs 6.4±0.47µs 0.00%
String comparison (Full) 259.8±6.11µs 263.2±6.03µs -1.29%
String concatenation (Execution) 5.1±0.13µs 5.2±0.19µs -1.92%
String concatenation (Full) 259.1±8.40µs 258.4±10.31µs +0.27%
String copy (Execution) 3.8±0.09µs 3.8±0.15µs 0.00%
String copy (Full) 255.5±5.67µs 255.1±5.50µs +0.16%
Symbols (Execution) 3.1±0.09µs 3.2±0.09µs -3.13%
Symbols (Full) 240.7±6.02µs 241.9±5.11µs -0.50%

@github-actions
Copy link

Benchmark for 1b712b3

Click to view benchmark
Test PR Benchmark Master Benchmark %
Arithmetic operations (Execution) 402.0±3.59ns 394.5±0.23ns +1.90%
Arithmetic operations (Full) 264.1±3.48µs 259.8±0.46µs +1.66%
Array access (Execution) 8.4±0.02µs 8.5±0.02µs -1.18%
Array access (Full) 278.1±0.45µs 278.8±0.48µs -0.25%
Array creation (Execution) 3.6±0.02ms 3.6±0.01ms 0.00%
Array creation (Full) 3.9±0.04ms 3.8±0.01ms +2.63%
Array pop (Execution) 1278.9±6.71µs 1270.2±4.66µs +0.68%
Array pop (Full) 1651.7±2.36µs 1649.6±0.96µs +0.13%
Boolean Object Access (Execution) 5.0±0.05µs 4.9±0.00µs +2.04%
Boolean Object Access (Full) 268.3±1.16µs 270.4±0.33µs -0.78%
Clean js (Execution) 786.6±9.54µs 774.1±6.95µs +1.61%
Clean js (Full) 1064.4±9.11µs 1066.0±11.36µs -0.15%
Clean js (Parser) 25.4±0.03µs 25.4±0.03µs 0.00%
Create Realm 486.2±0.25ns 487.3±0.22ns -0.23%
Dynamic Object Property Access (Execution) 5.5±0.01µs 5.5±0.01µs 0.00%
Dynamic Object Property Access (Full) 275.0±1.34µs 269.3±0.33µs +2.12%
Expression (Lexer) 2.4±0.00µs 2.4±0.00µs 0.00%
Expression (Parser) 5.7±0.00µs 5.6±0.00µs +1.79%
Fibonacci (Execution) 840.8±1.76µs 832.7±2.04µs +0.97%
Fibonacci (Full) 1123.0±0.83µs 1127.2±6.32µs -0.37%
For loop (Execution) 23.7±0.28µs 23.1±0.06µs +2.60%
For loop (Full) 290.2±0.33µs 290.3±0.99µs -0.03%
For loop (Lexer) 4.4±0.00µs 4.5±0.01µs -2.22%
For loop (Parser) 12.9±0.02µs 12.9±0.10µs 0.00%
Goal Symbols (Parser) 8.8±0.07µs 8.7±0.02µs +1.15%
Hello World (Lexer) 880.3±1.51ns 883.9±0.70ns -0.41%
Hello World (Parser) 2.3±0.00µs 2.3±0.00µs 0.00%
Long file (Parser) 6.5±0.04ms 6.5±0.03ms 0.00%
Mini js (Execution) 702.7±3.71µs 696.6±4.43µs +0.88%
Mini js (Full) 980.0±4.96µs 983.4±3.82µs -0.35%
Mini js (Parser) 22.7±0.06µs 22.6±0.02µs +0.44%
Number Object Access (Execution) 4.0±0.03µs 3.9±0.00µs +2.56%
Number Object Access (Full) 265.5±0.67µs 265.4±0.49µs +0.04%
Object Creation (Execution) 4.8±0.07µs 4.7±0.02µs +2.13%
Object Creation (Full) 325.6±3.33µs 321.9±0.26µs +1.15%
RegExp (Execution) 69.6±1.27µs 68.6±1.73µs +1.46%
RegExp (Full) 424.4±0.64µs 423.0±0.52µs +0.33%
RegExp Literal (Execution) 71.9±1.28µs 71.7±1.25µs +0.28%
RegExp Literal (Full) 346.2±0.52µs 347.0±0.51µs -0.23%
RegExp Literal Creation (Execution) 69.4±2.02µs 68.4±1.11µs +1.46%
RegExp Literal Creation (Full) 421.2±0.66µs 424.0±0.66µs -0.66%
Static Object Property Access (Execution) 5.0±0.01µs 4.9±0.02µs +2.04%
Static Object Property Access (Full) 272.9±1.27µs 270.3±1.04µs +0.96%
String Object Access (Execution) 7.2±0.05µs 7.1±0.02µs +1.41%
String Object Access (Full) 273.3±0.75µs 274.9±0.75µs -0.58%
String comparison (Execution) 6.7±0.04µs 6.6±0.01µs +1.52%
String comparison (Full) 269.3±0.55µs 272.9±1.21µs -1.32%
String concatenation (Execution) 5.3±0.04µs 5.3±0.03µs 0.00%
String concatenation (Full) 265.1±0.36µs 266.5±0.32µs -0.53%
String copy (Execution) 4.0±0.02µs 4.0±0.01µs 0.00%
String copy (Full) 266.2±0.23µs 260.8±1.79µs +2.07%
Symbols (Execution) 3.3±0.04µs 3.3±0.00µs 0.00%
Symbols (Full) 250.3±1.88µs 246.2±1.64µs +1.67%

Copy link
Member

@Razican Razican left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good! thanks!

@HalidOdat HalidOdat merged commit b0c387b into master Aug 27, 2020
@HalidOdat HalidOdat deleted the doc/gcobject branch August 27, 2020 16:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation update documentation enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants