Skip to content

[WIP] Implement JSON-LD expansion#2543

Draft
jviotti wants to merge 2 commits into
mainfrom
jsonld-expand
Draft

[WIP] Implement JSON-LD expansion#2543
jviotti wants to merge 2 commits into
mainfrom
jsonld-expand

Conversation

@jviotti

@jviotti jviotti commented Jun 24, 2026

Copy link
Copy Markdown
Member

Signed-off-by: Juan Cruz Viotti jv@jviotti.com

Review in cubic

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Benchmark (macos/llvm)

Details
Benchmark suite Current: 892cb34 Previous: 9feca28 Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 2.5548095436132043 ns/iter 1.6861436377013685 ns/iter 1.52
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 2.1725468741756586 ns/iter 1.7302013124598843 ns/iter 1.26
Regex_Period_Asterisk 1.93086642714065 ns/iter 1.7618096004427053 ns/iter 1.10
Regex_Group_Period_Asterisk_Group 1.8755931054461619 ns/iter 1.6878555274769984 ns/iter 1.11
Regex_Period_Plus 2.3556862255372466 ns/iter 2.015368769520291 ns/iter 1.17
Regex_Period 2.355592929726328 ns/iter 2.0276407562277234 ns/iter 1.16
Regex_Caret_Period_Plus_Dollar 2.3148814508308786 ns/iter 2.021403616516269 ns/iter 1.15
Regex_Caret_Group_Period_Plus_Group_Dollar 2.2768787652131897 ns/iter 2.018710757030514 ns/iter 1.13
Regex_Caret_Period_Asterisk_Dollar 1.8163773210063803 ns/iter 1.7561015395706239 ns/iter 1.03
Regex_Caret_Group_Period_Asterisk_Group_Dollar 1.9321344253489994 ns/iter 1.843627424308253 ns/iter 1.05
Regex_Caret_X_Hyphen 7.120131440568362 ns/iter 6.1485480180511125 ns/iter 1.16
Regex_Period_Md_Dollar 21.15497399856878 ns/iter 18.840289212978675 ns/iter 1.12
Regex_Caret_Slash_Period_Asterisk 5.257732090001355 ns/iter 4.792924311394974 ns/iter 1.10
Regex_Caret_Period_Range_Dollar 2.7532429910639387 ns/iter 2.1267625778207635 ns/iter 1.29
Regex_Nested_Backtrack 32.36174698950261 ns/iter 24.994746710621 ns/iter 1.29
JSON_Array_Of_Objects_Unique 422.26738893637474 ns/iter 370.38722580249566 ns/iter 1.14
JSON_Parse_1 4357.915078867147 ns/iter 3992.406483348391 ns/iter 1.09
JSON_Parse_Real 6319.265281810999 ns/iter 6480.1738201532 ns/iter 0.98
JSON_Parse_Decimal 6810.387822427774 ns/iter 7120.86074197894 ns/iter 0.96
JSON_Parse_Schema_ISO_Language 5095100.972973775 ns/iter 3948971.3115940043 ns/iter 1.29
JSON_Parse_Integer 3485.728518510891 ns/iter 3220.008189518447 ns/iter 1.08
JSON_Parse_String_NonSSO_Plain 4463.583864872777 ns/iter 4630.61595377435 ns/iter 0.96
JSON_Parse_String_SSO_Plain 2032.6150133067003 ns/iter 2262.274788671654 ns/iter 0.90
JSON_Parse_String_Escape_Heavy 20351.640895745262 ns/iter 17567.853755230062 ns/iter 1.16
JSON_Parse_Object_Short_Keys 5921.475158167342 ns/iter 5645.263081360095 ns/iter 1.05
JSON_Parse_Object_Scalar_Properties 3788.546849739016 ns/iter 2826.2139495525066 ns/iter 1.34
JSON_Parse_Object_Array_Properties 5460.4654199988545 ns/iter 3701.3198004268165 ns/iter 1.48
JSON_Parse_Object_Object_Properties 4099.752119272244 ns/iter 3675.4015641835776 ns/iter 1.12
JSON_Parse_Nested_Containers 40138.33270957796 ns/iter 30839.152126168105 ns/iter 1.30
JSON_From_String_Copy 36.977570412092135 ns/iter 25.270819777366807 ns/iter 1.46
JSON_From_String_Temporary 25.985031431109963 ns/iter 19.468767477653095 ns/iter 1.33
JSON_Number_To_Double 40.686818010448384 ns/iter 33.14772409059575 ns/iter 1.23
JSON_Object_At_Last_Key/8 5.095161402403555 ns/iter 3.696183863523443 ns/iter 1.38
JSON_Object_At_Last_Key/32 15.12103974530246 ns/iter 13.390774739248473 ns/iter 1.13
JSON_Object_At_Last_Key/128 64.5897771239008 ns/iter 55.32328808456968 ns/iter 1.17
JSON_Object_At_Last_Key/512 239.33275255166208 ns/iter 199.08153655399317 ns/iter 1.20
JSON_Fast_Hash_Helm_Chart_Lock 67.46226784492312 ns/iter 68.79770090671046 ns/iter 0.98
JSON_Equality_Helm_Chart_Lock 193.97695761402395 ns/iter 134.99473142138092 ns/iter 1.44
JSON_Divisible_By_Decimal 278.8153613267863 ns/iter 190.06002605035715 ns/iter 1.47
JSON_String_Equal/10 8.121663404573452 ns/iter 7.20251419899223 ns/iter 1.13
JSON_String_Equal/100 8.120941383409399 ns/iter 6.832183531953508 ns/iter 1.19
JSON_String_Equal_Small_By_Perfect_Hash/10 1.0964609702141754 ns/iter 0.7858774042480513 ns/iter 1.40
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 4.543530167989121 ns/iter 3.335431825789165 ns/iter 1.36
JSON_String_Fast_Hash/10 2.752518661001375 ns/iter 2.3711254756257345 ns/iter 1.16
JSON_String_Fast_Hash/100 2.355151413559051 ns/iter 2.01632285567089 ns/iter 1.17
JSON_String_Key_Hash/10 1.7537251109594116 ns/iter 1.3776845515845506 ns/iter 1.27
JSON_String_Key_Hash/100 3.1063166733021546 ns/iter 2.27885967115643 ns/iter 1.36
JSON_Object_Defines_Miss_Same_Length 3.153312331152101 ns/iter 2.3537677682242175 ns/iter 1.34
JSON_Object_Defines_Miss_Too_Small 3.772632398841463 ns/iter 2.5334566837909454 ns/iter 1.49
JSON_Object_Defines_Miss_Too_Large 3.5453445414925366 ns/iter 2.5366892377015366 ns/iter 1.40
Pointer_Object_Traverse 18.28283286690779 ns/iter 15.343915513084701 ns/iter 1.19
Pointer_Object_Try_Traverse 31.748819056955952 ns/iter 23.426558982314447 ns/iter 1.36
Pointer_Push_Back_Pointer_To_Weak_Pointer 203.21177723100075 ns/iter 158.19464886516107 ns/iter 1.28
Pointer_Walker_Schema_ISO_Language 3288634.9789912538 ns/iter 2666720.3228067877 ns/iter 1.23
Pointer_Maybe_Tracked_Deeply_Nested/0 1415034.8228661418 ns/iter 946147.8292384999 ns/iter 1.50
Pointer_Maybe_Tracked_Deeply_Nested/1 2093769.846153908 ns/iter 1208131.717391282 ns/iter 1.73
Pointer_Position_Tracker_Get_Deeply_Nested 479.61658034365564 ns/iter 354.2891097750041 ns/iter 1.35
URITemplateRouter_Create 29041.134084231806 ns/iter 24665.847428388213 ns/iter 1.18
URITemplateRouter_Match 198.6468513253138 ns/iter 161.35641820906065 ns/iter 1.23
URITemplateRouter_Match_BasePath 234.14856918537717 ns/iter 190.33024909716036 ns/iter 1.23
URITemplateRouterView_Restore 15511.804280437256 ns/iter 9263.838106166864 ns/iter 1.67
URITemplateRouterView_Match 168.48497465571594 ns/iter 129.37135373161684 ns/iter 1.30
URITemplateRouterView_Match_BasePath 192.29283690854064 ns/iter 151.1612053034213 ns/iter 1.27
URITemplateRouterView_Arguments 456.8230693598445 ns/iter 450.07721998169575 ns/iter 1.01
JSONL_Parse_Large 16515469.704545053 ns/iter 12396736.105265995 ns/iter 1.33
JSONL_Parse_Large_GZIP 17025023.512820926 ns/iter 13746699.999992415 ns/iter 1.24
HTML_Build_Table_100000 87349744.87498449 ns/iter 69009045.90002027 ns/iter 1.27
HTML_Render_Table_100000 4655507.844156339 ns/iter 2981937.3205127623 ns/iter 1.56
GZIP_Compress_ISO_Language_Set_3_Locations 36718487.70587156 ns/iter 32221543.416672677 ns/iter 1.14
GZIP_Decompress_ISO_Language_Set_3_Locations 6866746.134019382 ns/iter 6045525.390621975 ns/iter 1.14
GZIP_Compress_ISO_Language_Set_3_Schema 2393639.6837351746 ns/iter 1543667.7334760416 ns/iter 1.55
GZIP_Decompress_ISO_Language_Set_3_Schema 507671.8596388836 ns/iter 277260.75188878365 ns/iter 1.83
JOSE_VerifySignature_RS256 35918.42196132319 ns/iter 22179.027847040154 ns/iter 1.62
JOSE_VerifySignature_ES512 1234290.4056936682 ns/iter 981825.6302524464 ns/iter 1.26

This comment was automatically generated by workflow using github-action-benchmark.

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Benchmark (linux/gcc)

Details
Benchmark suite Current: 06125e7 Previous: 428cbdf Ratio
JOSE_VerifySignature_RS256 22221.10424056476 ns/iter 22297.861680585356 ns/iter 1.00
JOSE_VerifySignature_ES512 577890.2451883061 ns/iter 578487.0990525447 ns/iter 1.00
GZIP_Compress_ISO_Language_Set_3_Locations 36477537.52631233 ns/iter 36352454.21052284 ns/iter 1.00
GZIP_Decompress_ISO_Language_Set_3_Locations 4359208.291925428 ns/iter 4204009.481927998 ns/iter 1.04
GZIP_Compress_ISO_Language_Set_3_Schema 2025422.8526012101 ns/iter 2022285.0835734815 ns/iter 1.00
GZIP_Decompress_ISO_Language_Set_3_Schema 377128.061488713 ns/iter 375557.89694043016 ns/iter 1.00
HTML_Build_Table_100000 60885130.363637716 ns/iter 60324407.91666242 ns/iter 1.01
HTML_Render_Table_100000 1905714.7634409268 ns/iter 1828887.8385416633 ns/iter 1.04
JSONL_Parse_Large 12899715.518518338 ns/iter 13114572.452830648 ns/iter 0.98
JSONL_Parse_Large_GZIP 14296368.836734733 ns/iter 14527887.312498914 ns/iter 0.98
URITemplateRouter_Create 30155.321767101654 ns/iter 30386.136631536305 ns/iter 0.99
URITemplateRouter_Match 158.8665966155366 ns/iter 155.70944479950697 ns/iter 1.02
URITemplateRouter_Match_BasePath 183.31133348201166 ns/iter 180.43110571644652 ns/iter 1.02
URITemplateRouterView_Restore 7691.580655838722 ns/iter 7866.242585432439 ns/iter 0.98
URITemplateRouterView_Match 126.26893660571301 ns/iter 125.54161455637905 ns/iter 1.01
URITemplateRouterView_Match_BasePath 144.97402653661368 ns/iter 142.31425856790392 ns/iter 1.02
URITemplateRouterView_Arguments 469.8055488035685 ns/iter 542.1137289208052 ns/iter 0.87
Pointer_Object_Traverse 28.70325672408272 ns/iter 28.263542884289702 ns/iter 1.02
Pointer_Object_Try_Traverse 23.390658991679217 ns/iter 23.374542587205127 ns/iter 1.00
Pointer_Push_Back_Pointer_To_Weak_Pointer 158.62275492844202 ns/iter 149.28174804702738 ns/iter 1.06
Pointer_Walker_Schema_ISO_Language 1900875.3473389249 ns/iter 1893015.3457444748 ns/iter 1.00
Pointer_Maybe_Tracked_Deeply_Nested/0 1527496.843267241 ns/iter 1514569.861233423 ns/iter 1.01
Pointer_Maybe_Tracked_Deeply_Nested/1 1851683.1364829023 ns/iter 1674204.782296853 ns/iter 1.11
Pointer_Position_Tracker_Get_Deeply_Nested 416.9716494183681 ns/iter 597.344928336686 ns/iter 0.70
JSON_Array_Of_Objects_Unique 419.80400959612405 ns/iter 411.78728503976515 ns/iter 1.02
JSON_Parse_1 7558.582319894907 ns/iter 7607.2481148423885 ns/iter 0.99
JSON_Parse_Real 6557.365602017904 ns/iter 6650.836649681656 ns/iter 0.99
JSON_Parse_Decimal 11284.866749287563 ns/iter 11269.669979256305 ns/iter 1.00
JSON_Parse_Schema_ISO_Language 5147684.946970024 ns/iter 5050484.554744699 ns/iter 1.02
JSON_Parse_Integer 4771.89733635718 ns/iter 4837.481414249283 ns/iter 0.99
JSON_Parse_String_NonSSO_Plain 8950.290511518657 ns/iter 8663.20257865806 ns/iter 1.03
JSON_Parse_String_SSO_Plain 3945.111329765814 ns/iter 3850.354425092893 ns/iter 1.02
JSON_Parse_String_Escape_Heavy 20800.614649491687 ns/iter 21032.286435332095 ns/iter 0.99
JSON_Parse_Object_Short_Keys 11149.468248762561 ns/iter 11298.540161583767 ns/iter 0.99
JSON_Parse_Object_Scalar_Properties 5728.341589097952 ns/iter 5789.038118591006 ns/iter 0.99
JSON_Parse_Object_Array_Properties 10153.275691614226 ns/iter 8711.03021298272 ns/iter 1.17
JSON_Parse_Object_Object_Properties 10345.231767967447 ns/iter 9132.483584274316 ns/iter 1.13
JSON_Parse_Nested_Containers 75135.7814775115 ns/iter 71273.00307882579 ns/iter 1.05
JSON_From_String_Copy 18.45965996395718 ns/iter 18.238142333208682 ns/iter 1.01
JSON_From_String_Temporary 15.379154720538056 ns/iter 15.354777315665544 ns/iter 1.00
JSON_Number_To_Double 20.57773824802374 ns/iter 20.650249587287316 ns/iter 1.00
JSON_Object_At_Last_Key/8 8.131939524799188 ns/iter 8.107418900680534 ns/iter 1.00
JSON_Object_At_Last_Key/32 31.5410798332345 ns/iter 31.494499236012217 ns/iter 1.00
JSON_Object_At_Last_Key/128 126.9208208867674 ns/iter 127.02033840718647 ns/iter 1.00
JSON_Object_At_Last_Key/512 519.4106555724628 ns/iter 521.1358085494592 ns/iter 1.00
JSON_Fast_Hash_Helm_Chart_Lock 68.13402510840247 ns/iter 64.42687623437286 ns/iter 1.06
JSON_Equality_Helm_Chart_Lock 158.10806636805427 ns/iter 160.51241059749833 ns/iter 0.99
JSON_Divisible_By_Decimal 238.98114508335647 ns/iter 239.90294935594883 ns/iter 1.00
JSON_String_Equal/10 6.312296924014131 ns/iter 6.31943306951302 ns/iter 1.00
JSON_String_Equal/100 6.95679042139899 ns/iter 6.934143090234938 ns/iter 1.00
JSON_String_Equal_Small_By_Perfect_Hash/10 0.6236695074647219 ns/iter 0.6235276274856992 ns/iter 1.00
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 25.199571953112233 ns/iter 25.219671621400042 ns/iter 1.00
JSON_String_Fast_Hash/10 1.2467374463655032 ns/iter 1.2448038695722803 ns/iter 1.00
JSON_String_Fast_Hash/100 1.247905455912159 ns/iter 1.2456366720601577 ns/iter 1.00
JSON_String_Key_Hash/10 1.249696561273273 ns/iter 1.2463148636142851 ns/iter 1.00
JSON_String_Key_Hash/100 12.444337983174233 ns/iter 12.446010143817201 ns/iter 1.00
JSON_Object_Defines_Miss_Same_Length 3.139967583503608 ns/iter 3.1144672567288705 ns/iter 1.01
JSON_Object_Defines_Miss_Too_Small 3.11469949999602 ns/iter 3.113279222561497 ns/iter 1.00
JSON_Object_Defines_Miss_Too_Large 3.4282013464315706 ns/iter 3.438031593831862 ns/iter 1.00
Regex_Lower_S_Or_Upper_S_Asterisk 0.6237220037094611 ns/iter 0.6229833525608787 ns/iter 1.00
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 0.9350629981733907 ns/iter 0.9343660346019903 ns/iter 1.00
Regex_Period_Asterisk 0.9590920529713537 ns/iter 0.9346922713244361 ns/iter 1.03
Regex_Group_Period_Asterisk_Group 0.6230835976739175 ns/iter 0.6229911168893102 ns/iter 1.00
Regex_Period_Plus 0.6235954779993104 ns/iter 0.6242686057123681 ns/iter 1.00
Regex_Period 0.9350355224040326 ns/iter 0.9346471015638558 ns/iter 1.00
Regex_Caret_Period_Plus_Dollar 0.9362497699602537 ns/iter 0.9378926622839959 ns/iter 1.00
Regex_Caret_Group_Period_Plus_Group_Dollar 0.6230066588441643 ns/iter 0.6231672077638366 ns/iter 1.00
Regex_Caret_Period_Asterisk_Dollar 0.623592126963687 ns/iter 0.6228396421417254 ns/iter 1.00
Regex_Caret_Group_Period_Asterisk_Group_Dollar 0.9360259109178526 ns/iter 0.9347078803942614 ns/iter 1.00
Regex_Caret_X_Hyphen 4.053799749836941 ns/iter 4.051551213313277 ns/iter 1.00
Regex_Period_Md_Dollar 38.57015280221757 ns/iter 28.142620037209642 ns/iter 1.37
Regex_Caret_Slash_Period_Asterisk 4.36021102528582 ns/iter 4.356690026742779 ns/iter 1.00
Regex_Caret_Period_Range_Dollar 1.2467509341736096 ns/iter 1.2503564206389688 ns/iter 1.00
Regex_Nested_Backtrack 36.16071540292922 ns/iter 35.74007792877684 ns/iter 1.01

This comment was automatically generated by workflow using github-action-benchmark.

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Benchmark (linux/llvm)

Details
Benchmark suite Current: 06125e7 Previous: 428cbdf Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 2.1785837182204597 ns/iter 2.206912987369952 ns/iter 0.99
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 2.178828108758613 ns/iter 2.1904358085094673 ns/iter 0.99
Regex_Period_Asterisk 2.179074487891411 ns/iter 2.227665298344402 ns/iter 0.98
Regex_Group_Period_Asterisk_Group 2.179487328561504 ns/iter 2.2022610381047723 ns/iter 0.99
Regex_Period_Plus 2.490699789239528 ns/iter 2.4902488986766804 ns/iter 1.00
Regex_Period 2.4901214517774086 ns/iter 2.492543239219817 ns/iter 1.00
Regex_Caret_Period_Plus_Dollar 2.8029736888326267 ns/iter 2.8013268606031856 ns/iter 1.00
Regex_Caret_Group_Period_Plus_Group_Dollar 2.801937429454531 ns/iter 2.8008563613235364 ns/iter 1.00
Regex_Caret_Period_Asterisk_Dollar 3.1114692529287304 ns/iter 3.1109231644117217 ns/iter 1.00
Regex_Caret_Group_Period_Asterisk_Group_Dollar 3.1125278679064863 ns/iter 3.111325136088843 ns/iter 1.00
Regex_Caret_X_Hyphen 6.856155983554876 ns/iter 6.854107994880672 ns/iter 1.00
Regex_Period_Md_Dollar 27.539826390324112 ns/iter 27.64679891607418 ns/iter 1.00
Regex_Caret_Slash_Period_Asterisk 6.852290291013853 ns/iter 6.862526394218174 ns/iter 1.00
Regex_Caret_Period_Range_Dollar 3.7353013480873782 ns/iter 3.734617128299413 ns/iter 1.00
Regex_Nested_Backtrack 48.42686242646451 ns/iter 48.05069376810753 ns/iter 1.01
JSON_Array_Of_Objects_Unique 406.35755442084286 ns/iter 401.56659050367034 ns/iter 1.01
JSON_Parse_1 4955.965093231097 ns/iter 5023.280129734043 ns/iter 0.99
JSON_Parse_Real 5374.778994486277 ns/iter 5395.974257486423 ns/iter 1.00
JSON_Parse_Decimal 7582.503509898218 ns/iter 8631.200325954067 ns/iter 0.88
JSON_Parse_Schema_ISO_Language 3448093.802955841 ns/iter 3562896.8826531535 ns/iter 0.97
JSON_Parse_Integer 3764.692007326306 ns/iter 3894.5923368617996 ns/iter 0.97
JSON_Parse_String_NonSSO_Plain 5023.0299451561405 ns/iter 5013.835571119489 ns/iter 1.00
JSON_Parse_String_SSO_Plain 2753.165903391014 ns/iter 3061.531503189615 ns/iter 0.90
JSON_Parse_String_Escape_Heavy 14206.751749599849 ns/iter 14780.101681689095 ns/iter 0.96
JSON_Parse_Object_Short_Keys 7897.170783448131 ns/iter 8153.5512192853475 ns/iter 0.97
JSON_Parse_Object_Scalar_Properties 4106.078822763006 ns/iter 4084.2547622381826 ns/iter 1.01
JSON_Parse_Object_Array_Properties 5784.754572830688 ns/iter 5775.085510922875 ns/iter 1.00
JSON_Parse_Object_Object_Properties 5568.765331295813 ns/iter 5837.750413731758 ns/iter 0.95
JSON_Parse_Nested_Containers 45645.038296234365 ns/iter 45498.31327652158 ns/iter 1.00
JSON_From_String_Copy 20.300399668179995 ns/iter 19.64332334293723 ns/iter 1.03
JSON_From_String_Temporary 17.45861900946007 ns/iter 17.160364962540537 ns/iter 1.02
JSON_Number_To_Double 23.784573532985124 ns/iter 23.72708219884181 ns/iter 1.00
JSON_Object_At_Last_Key/8 3.492941105292191 ns/iter 3.475554257067884 ns/iter 1.01
JSON_Object_At_Last_Key/32 11.841798387253196 ns/iter 11.859426141857629 ns/iter 1.00
JSON_Object_At_Last_Key/128 48.92716270888345 ns/iter 48.86811797520075 ns/iter 1.00
JSON_Object_At_Last_Key/512 383.6030741321363 ns/iter 383.3900223939115 ns/iter 1.00
JSON_Fast_Hash_Helm_Chart_Lock 56.71505007453208 ns/iter 56.6987458469463 ns/iter 1.00
JSON_Equality_Helm_Chart_Lock 165.94251774794898 ns/iter 165.87762766644386 ns/iter 1.00
JSON_Divisible_By_Decimal 257.89160959177684 ns/iter 257.6251448808459 ns/iter 1.00
JSON_String_Equal/10 7.788509619436125 ns/iter 6.854382090200381 ns/iter 1.14
JSON_String_Equal/100 7.495167052362006 ns/iter 7.477833007431846 ns/iter 1.00
JSON_String_Equal_Small_By_Perfect_Hash/10 0.9370759036172271 ns/iter 0.9359243926982348 ns/iter 1.00
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 14.940059473567437 ns/iter 10.585594415720688 ns/iter 1.41
JSON_String_Fast_Hash/10 2.179410856072326 ns/iter 2.1813415099430618 ns/iter 1.00
JSON_String_Fast_Hash/100 2.1799990283375736 ns/iter 2.1810678109740635 ns/iter 1.00
JSON_String_Key_Hash/10 2.705427723929039 ns/iter 2.181479778434546 ns/iter 1.24
JSON_String_Key_Hash/100 9.024993967491344 ns/iter 6.540847564250511 ns/iter 1.38
JSON_Object_Defines_Miss_Same_Length 2.640202341537445 ns/iter 2.7206627240808006 ns/iter 0.97
JSON_Object_Defines_Miss_Too_Small 2.711704482034785 ns/iter 2.7368187738365033 ns/iter 0.99
JSON_Object_Defines_Miss_Too_Large 2.6860884164058394 ns/iter 2.6794438567089336 ns/iter 1.00
Pointer_Object_Traverse 24.06776493927755 ns/iter 24.213718387933035 ns/iter 0.99
Pointer_Object_Try_Traverse 28.44348061567942 ns/iter 28.419299706482537 ns/iter 1.00
Pointer_Push_Back_Pointer_To_Weak_Pointer 229.3851418492554 ns/iter 169.8692880898058 ns/iter 1.35
Pointer_Walker_Schema_ISO_Language 1785313.6350001364 ns/iter 1736519.0588233816 ns/iter 1.03
Pointer_Maybe_Tracked_Deeply_Nested/0 1239213.5643739859 ns/iter 1258024.7839285417 ns/iter 0.99
Pointer_Maybe_Tracked_Deeply_Nested/1 1759593.4593908926 ns/iter 1916315.8282827968 ns/iter 0.92
Pointer_Position_Tracker_Get_Deeply_Nested 695.3290330991223 ns/iter 642.7091638200197 ns/iter 1.08
URITemplateRouter_Create 31224.528007143566 ns/iter 32043.0802568236 ns/iter 0.97
URITemplateRouter_Match 186.54065721427892 ns/iter 175.610449562389 ns/iter 1.06
URITemplateRouter_Match_BasePath 213.14849616465068 ns/iter 203.2932115788875 ns/iter 1.05
URITemplateRouterView_Restore 7761.533283896035 ns/iter 7713.137701783936 ns/iter 1.01
URITemplateRouterView_Match 164.80337079178207 ns/iter 164.44518566023973 ns/iter 1.00
URITemplateRouterView_Match_BasePath 189.00760231512658 ns/iter 189.79105437258764 ns/iter 1.00
URITemplateRouterView_Arguments 450.31362184380765 ns/iter 437.72995451235016 ns/iter 1.03
JSONL_Parse_Large 9958960.585715562 ns/iter 9779783.57746413 ns/iter 1.02
JSONL_Parse_Large_GZIP 11508544.049180556 ns/iter 11306543.580644758 ns/iter 1.02
HTML_Build_Table_100000 69993377.20000085 ns/iter 68755410.59999932 ns/iter 1.02
HTML_Render_Table_100000 5779959.423729436 ns/iter 5229932.687022816 ns/iter 1.11
GZIP_Compress_ISO_Language_Set_3_Locations 33523858.523814116 ns/iter 33481705.095238924 ns/iter 1.00
GZIP_Decompress_ISO_Language_Set_3_Locations 4322025.093167653 ns/iter 4241101.9573173355 ns/iter 1.02
GZIP_Compress_ISO_Language_Set_3_Schema 1880753.2102426323 ns/iter 1884045.5929918946 ns/iter 1.00
GZIP_Decompress_ISO_Language_Set_3_Schema 359585.5540883291 ns/iter 353901.88720283133 ns/iter 1.02
JOSE_VerifySignature_RS256 57951.28885036899 ns/iter 57876.69883913847 ns/iter 1.00
JOSE_VerifySignature_ES512 2420013.482758506 ns/iter 2407480.713792791 ns/iter 1.01

This comment was automatically generated by workflow using github-action-benchmark.

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Benchmark (windows/msvc)

Details
Benchmark suite Current: 892cb34 Previous: 9feca28 Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 5.123175000003357 ns/iter 5.042648999999528 ns/iter 1.02
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 5.320214999997006 ns/iter 4.977615000000242 ns/iter 1.07
Regex_Period_Asterisk 5.371581999997944 ns/iter 4.9669232142853 ns/iter 1.08
Regex_Group_Period_Asterisk_Group 5.243184000000838 ns/iter 4.9842899999998735 ns/iter 1.05
Regex_Period_Plus 4.908282590382327 ns/iter 4.618740658301347 ns/iter 1.06
Regex_Period 5.106919242213869 ns/iter 4.611563179937238 ns/iter 1.11
Regex_Caret_Period_Plus_Dollar 5.100496000000021 ns/iter 4.650605367523336 ns/iter 1.10
Regex_Caret_Group_Period_Plus_Group_Dollar 4.8462857142835345 ns/iter 4.609876238680704 ns/iter 1.05
Regex_Caret_Period_Asterisk_Dollar 5.283845000003566 ns/iter 4.955707000001439 ns/iter 1.07
Regex_Caret_Group_Period_Asterisk_Group_Dollar 5.028175000002193 ns/iter 4.956899107142476 ns/iter 1.01
Regex_Caret_X_Hyphen 8.312401302179062 ns/iter 7.799660714284634 ns/iter 1.07
Regex_Period_Md_Dollar 44.49603750001074 ns/iter 63.42941071429615 ns/iter 0.70
Regex_Caret_Slash_Period_Asterisk 7.8597689732161164 ns/iter 7.499836607142438 ns/iter 1.05
Regex_Caret_Period_Range_Dollar 5.960471428571575 ns/iter 5.3163100000006125 ns/iter 1.12
Regex_Nested_Backtrack 54.64977999999974 ns/iter 66.7748883928557 ns/iter 0.82
JSON_Array_Of_Objects_Unique 505.54858593630087 ns/iter 520.4865000000609 ns/iter 0.97
JSON_Parse_1 9217.032959676833 ns/iter 9311.721376245927 ns/iter 0.99
JSON_Parse_Real 15985.069196428218 ns/iter 16490.37493554513 ns/iter 0.97
JSON_Parse_Decimal 11804.433928570494 ns/iter 11243.22343749995 ns/iter 1.05
JSON_Parse_Schema_ISO_Language 7469865.555554458 ns/iter 7766787.777778619 ns/iter 0.96
JSON_Parse_Integer 6122.5480000030075 ns/iter 5889.0928571417235 ns/iter 1.04
JSON_Parse_String_NonSSO_Plain 7674.410714285175 ns/iter 7731.481026786368 ns/iter 0.99
JSON_Parse_String_SSO_Plain 3678.904680526015 ns/iter 3665.9564893624824 ns/iter 1.00
JSON_Parse_String_Escape_Heavy 21796.887500002525 ns/iter 21378.93041611353 ns/iter 1.02
JSON_Parse_Object_Short_Keys 13141.805357138634 ns/iter 12927.475000001974 ns/iter 1.02
JSON_Parse_Object_Scalar_Properties 6803.411607141437 ns/iter 6674.334821428017 ns/iter 1.02
JSON_Parse_Object_Array_Properties 11371.575000005407 ns/iter 11425.481250000757 ns/iter 1.00
JSON_Parse_Object_Object_Properties 11556.98750000056 ns/iter 11667.887499998284 ns/iter 0.99
JSON_Parse_Nested_Containers 77955.44642859348 ns/iter 82201.2499999961 ns/iter 0.95
JSON_From_String_Copy 64.05385044640103 ns/iter 62.4517946428479 ns/iter 1.03
JSON_From_String_Temporary 60.33258928567874 ns/iter 80.93532227965828 ns/iter 0.75
JSON_Number_To_Double 118.99499999998397 ns/iter 130.64381336409457 ns/iter 0.91
JSON_Object_At_Last_Key/8 7.234987499998624 ns/iter 7.9977165178566985 ns/iter 0.90
JSON_Object_At_Last_Key/32 23.24488032091953 ns/iter 25.34317725007396 ns/iter 0.92
JSON_Object_At_Last_Key/128 89.39276386637795 ns/iter 113.30861547731062 ns/iter 0.79
JSON_Object_At_Last_Key/512 414.82999338880705 ns/iter 433.3523124999772 ns/iter 0.96
JSON_Fast_Hash_Helm_Chart_Lock 62.20785714288825 ns/iter 72.07108258927722 ns/iter 0.86
JSON_Equality_Helm_Chart_Lock 299.39209821431433 ns/iter 289.08199602314795 ns/iter 1.04
JSON_Divisible_By_Decimal 300.31002228687737 ns/iter 368.1629673287072 ns/iter 0.82
JSON_String_Equal/10 15.34107366071323 ns/iter 14.36810819478537 ns/iter 1.07
JSON_String_Equal/100 17.147791849462095 ns/iter 16.009110160653336 ns/iter 1.07
JSON_String_Equal_Small_By_Perfect_Hash/10 2.6033789285715363 ns/iter 2.147593124999503 ns/iter 1.21
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 14.748900603795231 ns/iter 19.32961830357373 ns/iter 0.76
JSON_String_Fast_Hash/10 5.015249197547093 ns/iter 4.614753805634314 ns/iter 1.09
JSON_String_Fast_Hash/100 5.020309832634522 ns/iter 4.618871662096075 ns/iter 1.09
JSON_String_Key_Hash/10 5.564474107140021 ns/iter 4.9960686395073015 ns/iter 1.11
JSON_String_Key_Hash/100 12.036524999999187 ns/iter 10.94364375000012 ns/iter 1.10
JSON_Object_Defines_Miss_Same_Length 4.230979551683787 ns/iter 4.169207373516159 ns/iter 1.01
JSON_Object_Defines_Miss_Too_Small 5.4480770000009215 ns/iter 5.146287999998549 ns/iter 1.06
JSON_Object_Defines_Miss_Too_Large 4.605962287067421 ns/iter 4.433101069450427 ns/iter 1.04
Pointer_Object_Traverse 76.27712499998195 ns/iter 70.47248883930634 ns/iter 1.08
Pointer_Object_Try_Traverse 75.16241071426423 ns/iter 74.23969866070682 ns/iter 1.01
Pointer_Push_Back_Pointer_To_Weak_Pointer 185.20405225034835 ns/iter 186.36160775167895 ns/iter 0.99
Pointer_Walker_Schema_ISO_Language 7931395.55555879 ns/iter 9178437.333333325 ns/iter 0.86
Pointer_Maybe_Tracked_Deeply_Nested/0 2445642.1686730585 ns/iter 2501014.0562255443 ns/iter 0.98
Pointer_Maybe_Tracked_Deeply_Nested/1 3649073.262030066 ns/iter 3751128.342246569 ns/iter 0.97
Pointer_Position_Tracker_Get_Deeply_Nested 554.6969866071346 ns/iter 565.4080357143495 ns/iter 0.98
URITemplateRouter_Create 41549.991294743144 ns/iter 40501.004004405644 ns/iter 1.03
URITemplateRouter_Match 233.21807142857713 ns/iter 221.82600000000718 ns/iter 1.05
URITemplateRouter_Match_BasePath 265.0198421883089 ns/iter 250.39099999998726 ns/iter 1.06
URITemplateRouterView_Restore 32748.713261128516 ns/iter 24668.008169551096 ns/iter 1.33
URITemplateRouterView_Match 180.56262326453145 ns/iter 172.85737541455214 ns/iter 1.04
URITemplateRouterView_Match_BasePath 205.19846182150425 ns/iter 198.76488398367388 ns/iter 1.03
URITemplateRouterView_Arguments 533.570446428452 ns/iter 597.8406000001542 ns/iter 0.89
JSONL_Parse_Large 33699895.000017926 ns/iter 33044833.33333034 ns/iter 1.02
JSONL_Parse_Large_GZIP 34180660.00001545 ns/iter 33414180.952377137 ns/iter 1.02
HTML_Build_Table_100000 87180244.44442563 ns/iter 91922742.8571503 ns/iter 0.95
HTML_Render_Table_100000 7663748.888889031 ns/iter 7977575.555555127 ns/iter 0.96
GZIP_Compress_ISO_Language_Set_3_Locations 36601242.1052466 ns/iter 38154377.777775355 ns/iter 0.96
GZIP_Decompress_ISO_Language_Set_3_Locations 9451523.437498111 ns/iter 10321146.666665299 ns/iter 0.92
GZIP_Compress_ISO_Language_Set_3_Schema 2123652.1739134016 ns/iter 2297713.0434783157 ns/iter 0.92
GZIP_Decompress_ISO_Language_Set_3_Schema 621822.410714198 ns/iter 615796.9642856643 ns/iter 1.01
JOSE_VerifySignature_RS256 22203.91562499913 ns/iter 23690.60501557452 ns/iter 0.94
JOSE_VerifySignature_ES512 1563766.2946425783 ns/iter 1537469.1964287835 ns/iter 1.02

This comment was automatically generated by workflow using github-action-benchmark.

@jviotti jviotti force-pushed the jsonld-expand branch 6 times, most recently from a365062 to 927947e Compare June 25, 2026 23:06
jviotti added 2 commits June 25, 2026 19:21
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
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