Skip to content

Extend doc with extended example - #491

Merged
AlexInLog merged 1 commit into
v2from
extend_docs
Dec 16, 2023
Merged

Extend doc with extended example#491
AlexInLog merged 1 commit into
v2from
extend_docs

Conversation

@AlexInLog

Copy link
Copy Markdown
Owner

No description provided.

@AlexInLog
AlexInLog marked this pull request as ready for review December 16, 2023 20:22
@github-actions

Copy link
Copy Markdown
Contributor

BENCHMARK RESULTS (AUTOGENERATED)

ci-ubuntu-gcc

General

name rxcpp rpp prev rpp ratio
Subscribe empty callbacks to empty observable 305.71 ns 1.54 ns 1.23 ns 1.25
Subscribe empty callbacks to empty observable via pipe operator 428.76 ns 1.54 ns 1.23 ns 1.25

Sources

name rxcpp rpp prev rpp ratio
from array of 1 - create + subscribe + immediate 989.66 ns 0.62 ns 0.62 ns 1.00
from array of 1 - create + subscribe + current_thread 1186.19 ns 4.64 ns 4.63 ns 1.00
concat_as_source of just(1 immediate) create + subscribe 2335.22 ns 79.13 ns 79.86 ns 0.99
defer from array of 1 - defer + create + subscribe + immediate 784.45 ns 0.31 ns 0.31 ns 1.00
interval - interval + take(3) + subscribe + immediate 2202.11 ns 58.03 ns 58.01 ns 1.00
interval - interval + take(3) + subscribe + current_thread 3069.09 ns 32.10 ns 32.10 ns 1.00

Filtering Operators

name rxcpp rpp prev rpp ratio
immediate_just+take(1)+subscribe 1113.62 ns 0.31 ns 0.31 ns 1.00
immediate_just+filter(true)+subscribe 897.95 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,2)+skip(1)+subscribe 994.30 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,1,2)+distinct_until_changed()+subscribe 896.04 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,2)+first()+subscribe 1237.44 ns 0.62 ns 0.62 ns 1.00
immediate_just(1,2)+last()+subscribe 928.28 ns 0.31 ns 0.31 ns 1.00
immediate_just+take_last(1)+subscribe 1121.65 ns 17.91 ns 19.35 ns 0.93

Schedulers

name rxcpp rpp prev rpp ratio
immediate scheduler create worker + schedule 275.31 ns 1.54 ns 1.24 ns 1.25
current_thread scheduler create worker + schedule 380.85 ns 5.56 ns 5.56 ns 1.00
current_thread scheduler create worker + schedule + recursive schedule 956.65 ns 64.82 ns 62.65 ns 1.03

Transforming Operators

name rxcpp rpp prev rpp ratio
immediate_just+map(v*2)+subscribe 890.29 ns 0.31 ns 0.31 ns 1.00
immediate_just+scan(10, std::plus)+subscribe 918.56 ns 0.31 ns 0.31 ns 1.00
immediate_just+flat_map(immediate_just(v*2))+subscribe 2337.57 ns 96.43 ns 96.07 ns 1.00
immediate_just+buffer(2)+subscribe 1554.24 ns 14.20 ns 14.66 ns 0.97
immediate_just+window(2)+subscribe + subscsribe inner 2383.27 ns 687.85 ns 710.42 ns 0.97

Conditional Operators

name rxcpp rpp prev rpp ratio
immediate_just+take_while(false)+subscribe 945.95 ns - - 0.00
immediate_just+take_while(true)+subscribe 908.56 ns 0.31 ns 0.31 ns 1.00

Utility Operators

name rxcpp rpp prev rpp ratio
immediate_just(1)+subscribe_on(immediate)+subscribe 2033.54 ns 0.31 ns 0.31 ns 1.00

Combining Operators

name rxcpp rpp prev rpp ratio
immediate_just(immediate_just(1), immediate_just(1)) + merge() + subscribe 3462.41 ns 112.63 ns 113.86 ns 0.99
immediate_just(1) + merge_with(immediate_just(2)) + subscribe 3709.36 ns 107.04 ns 107.69 ns 0.99
immediate_just(1) + with_latest_from(immediate_just(2)) + subscribe - 85.90 ns 86.99 ns 0.99
immediate_just(immediate_just(1),immediate_just(1)) + switch_on_next() + subscribe 3549.96 ns 475.78 ns 519.85 ns 0.92

Subjects

name rxcpp rpp prev rpp ratio
publish_subject with 1 observer - on_next 34.50 ns 23.11 ns 23.82 ns 0.97

Scenarios

name rxcpp rpp prev rpp ratio
basic sample 1460.96 ns 14.82 ns 14.82 ns 1.00
basic sample with immediate scheduler 1440.57 ns 5.55 ns 5.56 ns 1.00

Aggregating Operators

name rxcpp rpp prev rpp ratio
immediate_just+reduce(10, std::plus)+subscribe 951.76 ns 0.31 ns 0.31 ns 1.00

ci-macos

General

name rxcpp rpp prev rpp ratio
Subscribe empty callbacks to empty observable 1140.52 ns 3.60 ns 3.08 ns 1.17
Subscribe empty callbacks to empty observable via pipe operator 1173.46 ns 3.72 ns 3.11 ns 1.20

Sources

name rxcpp rpp prev rpp ratio
from array of 1 - create + subscribe + immediate 2317.22 ns 0.28 ns 0.24 ns 1.19
from array of 1 - create + subscribe + current_thread 2943.12 ns 31.01 ns 189.49 ns 0.16
concat_as_source of just(1 immediate) create + subscribe 6573.68 ns 313.23 ns 253.49 ns 1.24
defer from array of 1 - defer + create + subscribe + immediate 2419.01 ns 0.28 ns 0.23 ns 1.21
interval - interval + take(3) + subscribe + immediate 5912.11 ns 143.68 ns 117.26 ns 1.23
interval - interval + take(3) + subscribe + current_thread 7402.78 ns 140.91 ns 112.35 ns 1.25

Filtering Operators

name rxcpp rpp prev rpp ratio
immediate_just+take(1)+subscribe 3210.28 ns 0.28 ns 0.23 ns 1.19
immediate_just+filter(true)+subscribe 2449.89 ns 0.26 ns 0.23 ns 1.11
immediate_just(1,2)+skip(1)+subscribe 3285.73 ns 0.27 ns 0.23 ns 1.17
immediate_just(1,1,2)+distinct_until_changed()+subscribe 2506.17 ns 0.56 ns 0.47 ns 1.20
immediate_just(1,2)+first()+subscribe 3714.45 ns 0.27 ns 0.23 ns 1.16
immediate_just(1,2)+last()+subscribe 2775.53 ns 0.28 ns 0.23 ns 1.19
immediate_just+take_last(1)+subscribe 3410.18 ns 74.25 ns 70.63 ns 1.05

Schedulers

name rxcpp rpp prev rpp ratio
immediate scheduler create worker + schedule 1053.66 ns 3.16 ns 2.58 ns 1.23
current_thread scheduler create worker + schedule 1442.44 ns 44.10 ns 35.96 ns 1.23
current_thread scheduler create worker + schedule + recursive schedule 2435.94 ns 266.99 ns 213.29 ns 1.25

Transforming Operators

name rxcpp rpp prev rpp ratio
immediate_just+map(v*2)+subscribe 2560.33 ns 0.29 ns 0.23 ns 1.25
immediate_just+scan(10, std::plus)+subscribe 2905.53 ns 0.58 ns 0.46 ns 1.27
immediate_just+flat_map(immediate_just(v*2))+subscribe 6625.98 ns 399.22 ns 333.34 ns 1.20
immediate_just+buffer(2)+subscribe 3149.64 ns 87.84 ns 69.57 ns 1.26
immediate_just+window(2)+subscribe + subscsribe inner 6468.09 ns 2388.27 ns 1885.10 ns 1.27

Conditional Operators

name rxcpp rpp prev rpp ratio
immediate_just+take_while(false)+subscribe 2590.59 ns - - 0.00
immediate_just+take_while(true)+subscribe 2536.75 ns 0.28 ns 0.23 ns 1.23

Utility Operators

name rxcpp rpp prev rpp ratio
immediate_just(1)+subscribe_on(immediate)+subscribe 5994.86 ns 0.28 ns 0.23 ns 1.20

Combining Operators

name rxcpp rpp prev rpp ratio
immediate_just(immediate_just(1), immediate_just(1)) + merge() + subscribe 9276.26 ns 458.96 ns 359.11 ns 1.28
immediate_just(1) + merge_with(immediate_just(2)) + subscribe 10404.21 ns 468.36 ns 369.99 ns 1.27
immediate_just(1) + with_latest_from(immediate_just(2)) + subscribe - 494.14 ns 389.19 ns 1.27
immediate_just(immediate_just(1),immediate_just(1)) + switch_on_next() + subscribe 9851.05 ns 1739.76 ns 1466.64 ns 1.19

Subjects

name rxcpp rpp prev rpp ratio
publish_subject with 1 observer - on_next 88.92 ns 87.73 ns 84.29 ns 1.04

Scenarios

name rxcpp rpp prev rpp ratio
basic sample 3307.10 ns 137.33 ns 114.39 ns 1.20
basic sample with immediate scheduler 3247.18 ns 20.37 ns 18.06 ns 1.13

Aggregating Operators

name rxcpp rpp prev rpp ratio
immediate_just+reduce(10, std::plus)+subscribe 2841.03 ns 0.28 ns 0.23 ns 1.20

ci-ubuntu-clang

General

name rxcpp rpp prev rpp ratio
Subscribe empty callbacks to empty observable 268.67 ns 0.88 ns 0.88 ns 1.00
Subscribe empty callbacks to empty observable via pipe operator 270.23 ns 0.88 ns 0.88 ns 1.00

Sources

name rxcpp rpp prev rpp ratio
from array of 1 - create + subscribe + immediate 565.73 ns 0.31 ns 0.44 ns 0.70
from array of 1 - create + subscribe + current_thread 795.36 ns 5.55 ns 5.56 ns 1.00
concat_as_source of just(1 immediate) create + subscribe 1883.35 ns 72.43 ns 74.04 ns 0.98
defer from array of 1 - defer + create + subscribe + immediate 576.22 ns 0.31 ns 0.31 ns 1.00
interval - interval + take(3) + subscribe + immediate 1522.96 ns 57.03 ns 54.84 ns 1.04
interval - interval + take(3) + subscribe + current_thread 2068.27 ns 30.86 ns 30.86 ns 1.00

Filtering Operators

name rxcpp rpp prev rpp ratio
immediate_just+take(1)+subscribe 924.88 ns 0.31 ns 0.31 ns 1.00
immediate_just+filter(true)+subscribe 654.50 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,2)+skip(1)+subscribe 860.64 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,1,2)+distinct_until_changed()+subscribe 689.18 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,2)+first()+subscribe 1082.94 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,2)+last()+subscribe 759.04 ns 0.31 ns 0.31 ns 1.00
immediate_just+take_last(1)+subscribe 950.43 ns 0.31 ns 0.31 ns 1.00

Schedulers

name rxcpp rpp prev rpp ratio
immediate scheduler create worker + schedule 193.85 ns 0.88 ns 0.88 ns 1.00
current_thread scheduler create worker + schedule 299.98 ns 5.56 ns 5.57 ns 1.00
current_thread scheduler create worker + schedule + recursive schedule 624.89 ns 57.54 ns 59.12 ns 0.97

Transforming Operators

name rxcpp rpp prev rpp ratio
immediate_just+map(v*2)+subscribe 658.43 ns 0.31 ns 0.31 ns 1.00
immediate_just+scan(10, std::plus)+subscribe 699.36 ns 0.31 ns 0.31 ns 1.00
immediate_just+flat_map(immediate_just(v*2))+subscribe 1792.79 ns 78.77 ns 80.09 ns 0.98
immediate_just+buffer(2)+subscribe 1389.03 ns 13.58 ns 14.51 ns 0.94
immediate_just+window(2)+subscribe + subscsribe inner 2139.49 ns 586.54 ns 595.15 ns 0.99

Conditional Operators

name rxcpp rpp prev rpp ratio
immediate_just+take_while(false)+subscribe 641.38 ns - - 0.00
immediate_just+take_while(true)+subscribe 654.27 ns 0.31 ns 0.31 ns 1.00

Utility Operators

name rxcpp rpp prev rpp ratio
immediate_just(1)+subscribe_on(immediate)+subscribe 1607.50 ns 0.31 ns 0.31 ns 1.00

Combining Operators

name rxcpp rpp prev rpp ratio
immediate_just(immediate_just(1), immediate_just(1)) + merge() + subscribe 2520.66 ns 85.48 ns 85.60 ns 1.00
immediate_just(1) + merge_with(immediate_just(2)) + subscribe 3024.01 ns 100.01 ns 95.20 ns 1.05
immediate_just(1) + with_latest_from(immediate_just(2)) + subscribe - 79.89 ns 80.87 ns 0.99
immediate_just(immediate_just(1),immediate_just(1)) + switch_on_next() + subscribe 2603.44 ns 537.76 ns 546.27 ns 0.98

Subjects

name rxcpp rpp prev rpp ratio
publish_subject with 1 observer - on_next 23.24 ns 24.27 ns 24.37 ns 1.00

Scenarios

name rxcpp rpp prev rpp ratio
basic sample 1051.68 ns 13.58 ns 13.59 ns 1.00
basic sample with immediate scheduler 1029.67 ns 6.17 ns 6.17 ns 1.00

Aggregating Operators

name rxcpp rpp prev rpp ratio
immediate_just+reduce(10, std::plus)+subscribe 744.66 ns 0.31 ns 0.31 ns 1.00

ci-windows

General

name rxcpp rpp prev rpp ratio
Subscribe empty callbacks to empty observable 587.00 ns 2.47 ns 3.09 ns 0.80
Subscribe empty callbacks to empty observable via pipe operator 581.40 ns 2.47 ns 3.09 ns 0.80

Sources

name rxcpp rpp prev rpp ratio
from array of 1 - create + subscribe + immediate 1160.64 ns 4.93 ns 4.93 ns 1.00
from array of 1 - create + subscribe + current_thread 1419.92 ns 19.75 ns 20.38 ns 0.97
concat_as_source of just(1 immediate) create + subscribe 4691.39 ns 154.54 ns 155.39 ns 0.99
defer from array of 1 - defer + create + subscribe + immediate 1203.89 ns 4.93 ns 4.93 ns 1.00
interval - interval + take(3) + subscribe + immediate 2935.00 ns 129.61 ns 130.66 ns 0.99
interval - interval + take(3) + subscribe + current_thread 3435.01 ns 61.10 ns 60.45 ns 1.01

Filtering Operators

name rxcpp rpp prev rpp ratio
immediate_just+take(1)+subscribe 1859.49 ns 12.83 ns 12.88 ns 1.00
immediate_just+filter(true)+subscribe 1352.85 ns 12.32 ns 12.32 ns 1.00
immediate_just(1,2)+skip(1)+subscribe 1764.81 ns 13.16 ns 13.21 ns 1.00
immediate_just(1,1,2)+distinct_until_changed()+subscribe 1361.24 ns 15.79 ns 15.94 ns 0.99
immediate_just(1,2)+first()+subscribe 2461.85 ns 12.64 ns 12.99 ns 0.97
immediate_just(1,2)+last()+subscribe 1487.14 ns 14.09 ns 14.13 ns 1.00
immediate_just+take_last(1)+subscribe 2047.61 ns 61.00 ns 58.95 ns 1.03

Schedulers

name rxcpp rpp prev rpp ratio
immediate scheduler create worker + schedule 484.73 ns 4.94 ns 4.94 ns 1.00
current_thread scheduler create worker + schedule 668.48 ns 16.04 ns 16.97 ns 0.95
current_thread scheduler create worker + schedule + recursive schedule 1091.88 ns 104.34 ns 107.30 ns 0.97

Transforming Operators

name rxcpp rpp prev rpp ratio
immediate_just+map(v*2)+subscribe 1363.17 ns 12.33 ns 12.34 ns 1.00
immediate_just+scan(10, std::plus)+subscribe 1434.73 ns 21.60 ns 21.27 ns 1.02
immediate_just+flat_map(immediate_just(v*2))+subscribe 3528.32 ns 198.60 ns 200.80 ns 0.99
immediate_just+buffer(2)+subscribe 2642.04 ns 63.26 ns 61.59 ns 1.03
immediate_just+window(2)+subscribe + subscsribe inner 4118.57 ns 1090.66 ns 1088.10 ns 1.00

Conditional Operators

name rxcpp rpp prev rpp ratio
immediate_just+take_while(false)+subscribe 1586.09 ns 11.45 ns 11.44 ns 1.00
immediate_just+take_while(true)+subscribe 1330.73 ns 12.32 ns 12.33 ns 1.00

Utility Operators

name rxcpp rpp prev rpp ratio
immediate_just(1)+subscribe_on(immediate)+subscribe 3180.94 ns 7.71 ns 7.71 ns 1.00

Combining Operators

name rxcpp rpp prev rpp ratio
immediate_just(immediate_just(1), immediate_just(1)) + merge() + subscribe 5298.10 ns 240.28 ns 244.65 ns 0.98
immediate_just(1) + merge_with(immediate_just(2)) + subscribe 6484.09 ns 216.53 ns 211.86 ns 1.02
immediate_just(1) + with_latest_from(immediate_just(2)) + subscribe - 221.03 ns 217.96 ns 1.01
immediate_just(immediate_just(1),immediate_just(1)) + switch_on_next() + subscribe 6245.40 ns 742.08 ns 740.87 ns 1.00

Subjects

name rxcpp rpp prev rpp ratio
publish_subject with 1 observer - on_next 36.28 ns 36.13 ns 36.10 ns 1.00

Scenarios

name rxcpp rpp prev rpp ratio
basic sample 1918.52 ns 61.66 ns 60.54 ns 1.02
basic sample with immediate scheduler 1902.64 ns 35.17 ns 35.17 ns 1.00

Aggregating Operators

name rxcpp rpp prev rpp ratio
immediate_just+reduce(10, std::plus)+subscribe 1803.77 ns 19.99 ns 20.03 ns 1.00

@codecov

codecov Bot commented Dec 16, 2023

Copy link
Copy Markdown

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (84e2b24) 95.54% compared to head (270e070) 95.54%.

Additional details and impacted files
@@           Coverage Diff           @@
##               v2     #491   +/-   ##
=======================================
  Coverage   95.54%   95.54%           
=======================================
  Files          76       76           
  Lines        1906     1906           
=======================================
  Hits         1821     1821           
  Misses         85       85           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@sonarqubecloud

Copy link
Copy Markdown

Quality Gate Passed Quality Gate passed

Kudos, no new issues were introduced!

0 New issues
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarCloud

@AlexInLog
AlexInLog merged commit 14fcc97 into v2 Dec 16, 2023
@AlexInLog
AlexInLog deleted the extend_docs branch December 16, 2023 20:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant