Skip to content

Conversation

@jviotti
Copy link
Member

@jviotti jviotti commented Jan 20, 2026

Signed-off-by: Juan Cruz Viotti [email protected]

@augmentcode
Copy link

augmentcode bot commented Jan 20, 2026

🤖 Augment PR Summary

Summary: This PR adds a small unit test to ensure sourcemeta::core::Regex supports normal value semantics (copy/move).

Changes:

  • Registers a new test file in test/regex/CMakeLists.txt
  • Adds test/regex/regex_test.cc with copy-construct/copy-assign coverage
  • Adds move-construct/move-assign coverage using std::move

Technical Notes: The tests compile ^foo via to_regex and verify the copied/moved Regex still behaves correctly via matches.

🤖 Was this summary useful? React with 👍 or 👎

Copy link

@augmentcode augmentcode bot left a comment

Choose a reason for hiding this comment

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

Review completed. No suggestions at this time.

Comment augment review to trigger a new review at any time.

Copy link

@github-actions github-actions bot left a comment

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: d63c4c7 Previous: 53dced3 Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 3.202915890575095 ns/iter 3.1267944334104945 ns/iter 1.02
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 3.108309338585246 ns/iter 3.108046800747174 ns/iter 1.00
Regex_Period_Asterisk 3.1083644154242824 ns/iter 3.1102378131893538 ns/iter 1.00
Regex_Group_Period_Asterisk_Group 3.1071049584975152 ns/iter 3.1122577263504265 ns/iter 1.00
Regex_Period_Plus 3.107265268432426 ns/iter 2.922265240833632 ns/iter 1.06
Regex_Period 3.1075743705078867 ns/iter 3.1034562246469535 ns/iter 1.00
Regex_Caret_Period_Plus_Dollar 3.1082203909888757 ns/iter 2.966321420606073 ns/iter 1.05
Regex_Caret_Group_Period_Plus_Group_Dollar 3.1076105546397463 ns/iter 2.919227956959245 ns/iter 1.06
Regex_Caret_Period_Asterisk_Dollar 3.1072542571919426 ns/iter 3.4195378827894807 ns/iter 0.91
Regex_Caret_Group_Period_Asterisk_Group_Dollar 3.4180820473173736 ns/iter 3.419326899517838 ns/iter 1.00
Regex_Caret_X_Hyphen 10.266068728901308 ns/iter 12.435614095071221 ns/iter 0.83
Regex_Period_Md_Dollar 27.490816657941053 ns/iter 27.540793087605955 ns/iter 1.00
Regex_Caret_Slash_Period_Asterisk 7.15053817205242 ns/iter 7.462179471868453 ns/iter 0.96
Regex_Caret_Period_Range_Dollar 3.7291464948386617 ns/iter 3.730876031624355 ns/iter 1.00
Regex_Nested_Backtrack 49.76215588120541 ns/iter 49.66018462060299 ns/iter 1.00
JSON_Array_Of_Objects_Unique 439.3747156832415 ns/iter 419.50699410673815 ns/iter 1.05
JSON_Parse_1 29822.97741298993 ns/iter 29203.412536563308 ns/iter 1.02
JSON_Parse_Real 39068.070011084266 ns/iter 38091.82814283824 ns/iter 1.03
JSON_Parse_Decimal 129190.17210079455 ns/iter 130544.53063885585 ns/iter 0.99
JSON_Fast_Hash_Helm_Chart_Lock 62.53254527402982 ns/iter 62.530264527961165 ns/iter 1.00
JSON_Equality_Helm_Chart_Lock 162.5862317467777 ns/iter 172.23862950266977 ns/iter 0.94
JSON_String_Equal/10 6.8517550335195 ns/iter 7.15943843997376 ns/iter 0.96
JSON_String_Equal/100 7.468824236417759 ns/iter 7.7898815133697905 ns/iter 0.96
JSON_String_Equal_Small_By_Perfect_Hash/10 0.937007058397862 ns/iter 0.9389873729276548 ns/iter 1.00
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 10.263247768188865 ns/iter 14.625910580895159 ns/iter 0.70
JSON_String_Fast_Hash/10 2.4867325998462313 ns/iter 2.4900347003653085 ns/iter 1.00
JSON_String_Fast_Hash/100 2.487159952532755 ns/iter 2.4876395968572087 ns/iter 1.00
JSON_String_Key_Hash/10 2.4891884620881224 ns/iter 2.6997338006123286 ns/iter 0.92
JSON_String_Key_Hash/100 6.526822706645831 ns/iter 9.017180361648013 ns/iter 0.72
JSON_Object_Defines_Miss_Same_Length 3.7324342102131 ns/iter 3.7323386483639425 ns/iter 1.00
JSON_Object_Defines_Miss_Too_Small 3.744756462379858 ns/iter 3.734499539654247 ns/iter 1.00
JSON_Object_Defines_Miss_Too_Large 3.7412650646353587 ns/iter 3.734276102039427 ns/iter 1.00
Pointer_Object_Traverse 46.134406929985246 ns/iter 46.095019913566034 ns/iter 1.00
Pointer_Object_Try_Traverse 53.81804432954257 ns/iter 53.90203057215278 ns/iter 1.00
Pointer_Push_Back_Pointer_To_Weak_Pointer 338.2282275691045 ns/iter 289.53545362658315 ns/iter 1.17
Pointer_Walker_Schema_ISO_Language 3126300.200892932 ns/iter 3159794.2421523123 ns/iter 0.99
Schema_Frame_WoT_References 5729558.793388064 ns/iter 5734060.966386157 ns/iter 1.00
Schema_Frame_OMC_References 26493145.23076695 ns/iter 28431095.541662898 ns/iter 0.93
Schema_Frame_OMC_Locations 24868474.78571365 ns/iter 25620818.111111406 ns/iter 0.97
Schema_Frame_ISO_Language_Locations 121571359.60001142 ns/iter 123855212.39998524 ns/iter 0.98
Schema_Iterator_ISO_Language 2353910.6488294955 ns/iter 2350788.12666643 ns/iter 1.00
Schema_Frame_ISO_Language_Locations_To_JSON 128194464.19998713 ns/iter 132543076.25001615 ns/iter 0.97
Schema_Tracker_ISO_Language 46663517.46667109 ns/iter 46718334.85714062 ns/iter 1.00
Schema_Tracker_ISO_Language_To_JSON 22993489.35484006 ns/iter 23456055.600001946 ns/iter 0.98
Schema_Format_ISO_Language_To_JSON 126885452.66668902 ns/iter 128331683.20000823 ns/iter 0.99
Schema_Bundle_Meta_2020_12 2130961.0884120557 ns/iter 2139731.525989642 ns/iter 1.00
Schema_Frame_Many_Resources_References 250514310.9999987 ns/iter 251770686.00002408 ns/iter 1.00
Alterschema_Check_Readibility_ISO_Language_Set_3 229635683.666667 ns/iter 228027026.33335534 ns/iter 1.01
Alterschema_Check_Readibility_OMC 31472699.272724595 ns/iter 32120019.500000168 ns/iter 0.98
EditorSchema_ForEditor_EmbeddedResources 14026532.420002693 ns/iter 13995278.816328581 ns/iter 1.00
URITemplateRouter_Create 16935.070842012956 ns/iter 17051.22268553291 ns/iter 0.99
URITemplateRouter_Match 172.97058811936577 ns/iter 173.39605027802625 ns/iter 1.00
URITemplateRouterView_Restore 8149.316140155317 ns/iter 8271.5217274252 ns/iter 0.99
URITemplateRouterView_Match 136.4996456205221 ns/iter 136.44009671140807 ns/iter 1.00

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

Copy link

@github-actions github-actions bot left a comment

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: d63c4c7 Previous: 53dced3 Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 3.7947005289379097 ns/iter 3.797022314648156 ns/iter 1.00
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 3.7968398437498205 ns/iter 3.7727003504059504 ns/iter 1.01
Regex_Period_Asterisk 4.427999631984695 ns/iter 4.393868124999756 ns/iter 1.01
Regex_Group_Period_Asterisk_Group 4.09720660531366 ns/iter 4.089246926945051 ns/iter 1.00
Regex_Period_Plus 4.418203716830549 ns/iter 4.41120374999997 ns/iter 1.00
Regex_Period 4.461338627438345 ns/iter 4.404608125000209 ns/iter 1.01
Regex_Caret_Period_Plus_Dollar 4.084829828723011 ns/iter 4.084481614436235 ns/iter 1.00
Regex_Caret_Group_Period_Plus_Group_Dollar 3.772211243263314 ns/iter 3.7722734374996088 ns/iter 1.00
Regex_Caret_Period_Asterisk_Dollar 4.095716748385072 ns/iter 4.17291411459468 ns/iter 0.98
Regex_Caret_Group_Period_Asterisk_Group_Dollar 3.859104635966803 ns/iter 3.7701630744666628 ns/iter 1.02
Regex_Caret_X_Hyphen 7.7882700892852235 ns/iter 7.5435647321432855 ns/iter 1.03
Regex_Period_Md_Dollar 36.232922567262946 ns/iter 35.12774928799485 ns/iter 1.03
Regex_Caret_Slash_Period_Asterisk 7.245118303573455 ns/iter 7.210940848214926 ns/iter 1.00
Regex_Caret_Period_Range_Dollar 4.101778749999596 ns/iter 4.086189641033273 ns/iter 1.00
Regex_Nested_Backtrack 99.54071875000638 ns/iter 98.50445988819399 ns/iter 1.01
JSON_Array_Of_Objects_Unique 498.25350000014623 ns/iter 500.31330000001617 ns/iter 1.00
JSON_Parse_1 74189.21874999184 ns/iter 73216.90178573347 ns/iter 1.01
JSON_Parse_Real 94815.73590462698 ns/iter 92588.77728674455 ns/iter 1.02
JSON_Parse_Decimal 346662.4743326763 ns/iter 339312.11498978885 ns/iter 1.02
JSON_Fast_Hash_Helm_Chart_Lock 70.48927678571967 ns/iter 69.28544642856797 ns/iter 1.02
JSON_Equality_Helm_Chart_Lock 271.9381428571361 ns/iter 265.2022127322306 ns/iter 1.03
JSON_String_Equal/10 12.336305357142203 ns/iter 12.539687500001103 ns/iter 0.98
JSON_String_Equal/100 14.217097034745098 ns/iter 14.010478732094723 ns/iter 1.01
JSON_String_Equal_Small_By_Perfect_Hash/10 2.235769797110464 ns/iter 2.4147118750001084 ns/iter 0.93
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 12.6320464285722 ns/iter 13.330905357142749 ns/iter 0.95
JSON_String_Fast_Hash/10 3.804997493205245 ns/iter 4.0406414357876805 ns/iter 0.94
JSON_String_Fast_Hash/100 3.832980439584687 ns/iter 3.7759607075421844 ns/iter 1.02
JSON_String_Key_Hash/10 3.7984596360730283 ns/iter 3.8411249931412392 ns/iter 0.99
JSON_String_Key_Hash/100 16.450878014833552 ns/iter 13.79833750000005 ns/iter 1.19
JSON_Object_Defines_Miss_Same_Length 4.735786729442266 ns/iter 4.803165603749883 ns/iter 0.99
JSON_Object_Defines_Miss_Too_Small 3.7810269575336846 ns/iter 3.7879274932357045 ns/iter 1.00
JSON_Object_Defines_Miss_Too_Large 4.717776518910455 ns/iter 4.745433492733873 ns/iter 0.99
Pointer_Object_Traverse 51.76074000000881 ns/iter 50.99362500000584 ns/iter 1.02
Pointer_Object_Try_Traverse 69.63649999998925 ns/iter 69.6555624999868 ns/iter 1.00
Pointer_Push_Back_Pointer_To_Weak_Pointer 171.7169866071495 ns/iter 146.99386160711265 ns/iter 1.17
Pointer_Walker_Schema_ISO_Language 10872720.312498529 ns/iter 9812754.666666782 ns/iter 1.11
Schema_Frame_WoT_References 11142810.937499803 ns/iter 10965870.312499959 ns/iter 1.02
Schema_Frame_OMC_References 55847218.18182847 ns/iter 53989700.000011005 ns/iter 1.03
Schema_Frame_OMC_Locations 52125250.00001733 ns/iter 49944399.999990955 ns/iter 1.04
Schema_Frame_ISO_Language_Locations 242687933.3333242 ns/iter 230547033.33339906 ns/iter 1.05
Schema_Iterator_ISO_Language 4355645.1807232285 ns/iter 4159825.3012046055 ns/iter 1.05
Schema_Frame_ISO_Language_Locations_To_JSON 245520733.3333268 ns/iter 241582200.00003895 ns/iter 1.02
Schema_Tracker_ISO_Language 103251666.6666652 ns/iter 101916849.99999021 ns/iter 1.01
Schema_Tracker_ISO_Language_To_JSON 56264954.54546123 ns/iter 53107009.09089147 ns/iter 1.06
Schema_Format_ISO_Language_To_JSON 246705033.33330393 ns/iter 229352066.6666306 ns/iter 1.08
Schema_Bundle_Meta_2020_12 4070911.17319254 ns/iter 4106679.5180751733 ns/iter 0.99
Schema_Frame_Many_Resources_References 498200800.00017697 ns/iter 484201999.99998206 ns/iter 1.03
Alterschema_Check_Readibility_ISO_Language_Set_3 359222299.9999421 ns/iter 352968150.0000379 ns/iter 1.02
Alterschema_Check_Readibility_OMC 66469727.27271945 ns/iter 61413700.000002794 ns/iter 1.08
EditorSchema_ForEditor_EmbeddedResources 25128287.499960322 ns/iter 24543169.230722785 ns/iter 1.02
URITemplateRouter_Create 23010.764388793254 ns/iter 23010.834700503394 ns/iter 1.00
URITemplateRouter_Match 212.2483750000015 ns/iter 207.9952898216476 ns/iter 1.02
URITemplateRouterView_Restore 32038.66779168188 ns/iter 32011.10954858303 ns/iter 1.00
URITemplateRouterView_Match 145.86104482765185 ns/iter 147.13277691374014 ns/iter 0.99

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

Copy link

@github-actions github-actions bot left a comment

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: d63c4c7 Previous: 53dced3 Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 2.2166627122530813 ns/iter 2.4986585145864737 ns/iter 0.89
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 1.8847869752739257 ns/iter 2.5378960251362717 ns/iter 0.74
Regex_Period_Asterisk 2.100584993043355 ns/iter 2.344052628528254 ns/iter 0.90
Regex_Group_Period_Asterisk_Group 2.1425073592576145 ns/iter 2.42807160207668 ns/iter 0.88
Regex_Period_Plus 2.481838663469575 ns/iter 2.6643307457349623 ns/iter 0.93
Regex_Period 2.579043021769005 ns/iter 2.82961645292832 ns/iter 0.91
Regex_Caret_Period_Plus_Dollar 2.382840629760436 ns/iter 2.7928152503391126 ns/iter 0.85
Regex_Caret_Group_Period_Plus_Group_Dollar 2.3910225859891594 ns/iter 2.618926151002002 ns/iter 0.91
Regex_Caret_Period_Asterisk_Dollar 2.378851011109295 ns/iter 2.1822439826570945 ns/iter 1.09
Regex_Caret_Group_Period_Asterisk_Group_Dollar 2.1451968068920153 ns/iter 2.3112349532421006 ns/iter 0.93
Regex_Caret_X_Hyphen 8.510976222977938 ns/iter 8.689819590308808 ns/iter 0.98
Regex_Period_Md_Dollar 24.505658082903395 ns/iter 30.2304021019644 ns/iter 0.81
Regex_Caret_Slash_Period_Asterisk 10.22361213943265 ns/iter 7.563370692403085 ns/iter 1.35
Regex_Caret_Period_Range_Dollar 2.6723800463536267 ns/iter 2.811292096127642 ns/iter 0.95
Regex_Nested_Backtrack 34.396029491497565 ns/iter 45.324263379821936 ns/iter 0.76
JSON_Array_Of_Objects_Unique 399.5203292525891 ns/iter 515.6546250000247 ns/iter 0.77
JSON_Parse_1 23958.039133032602 ns/iter 32803.28191701426 ns/iter 0.73
JSON_Parse_Real 29131.98244538832 ns/iter 38546.18176132592 ns/iter 0.76
JSON_Parse_Decimal 337901.0683201017 ns/iter 371694.22423558653 ns/iter 0.91
JSON_Fast_Hash_Helm_Chart_Lock 69.90935359662723 ns/iter 79.917115608879 ns/iter 0.87
JSON_Equality_Helm_Chart_Lock 157.23628131040078 ns/iter 189.24994613995563 ns/iter 0.83
JSON_String_Equal/10 8.136689481450956 ns/iter 10.550924848182103 ns/iter 0.77
JSON_String_Equal/100 7.730658475605851 ns/iter 9.617239273622245 ns/iter 0.80
JSON_String_Equal_Small_By_Perfect_Hash/10 0.4093520863558938 ns/iter 0.42808194562640933 ns/iter 0.96
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 4.735147623286387 ns/iter 5.152701443612276 ns/iter 0.92
JSON_String_Fast_Hash/10 3.0409811194428373 ns/iter 3.461822677245243 ns/iter 0.88
JSON_String_Fast_Hash/100 2.7101426851953136 ns/iter 3.209387442017633 ns/iter 0.84
JSON_String_Key_Hash/10 2.1594464054853577 ns/iter 2.1581103813245694 ns/iter 1.00
JSON_String_Key_Hash/100 3.4507339554871934 ns/iter 3.8940412936318474 ns/iter 0.89
JSON_Object_Defines_Miss_Same_Length 3.4386830536651893 ns/iter 3.7720853875204967 ns/iter 0.91
JSON_Object_Defines_Miss_Too_Small 3.6055069715813475 ns/iter 4.130281072431686 ns/iter 0.87
JSON_Object_Defines_Miss_Too_Large 3.246173600511389 ns/iter 3.7386396333853433 ns/iter 0.87
Pointer_Object_Traverse 20.18449717811235 ns/iter 22.165383270370004 ns/iter 0.91
Pointer_Object_Try_Traverse 35.3576315907593 ns/iter 33.81249057840168 ns/iter 1.05
Pointer_Push_Back_Pointer_To_Weak_Pointer 236.4360963154891 ns/iter 259.75683507076195 ns/iter 0.91
Pointer_Walker_Schema_ISO_Language 7456585.404958058 ns/iter 7925089.460785802 ns/iter 0.94
Schema_Frame_WoT_References 8014367.681318498 ns/iter 9511006.443299547 ns/iter 0.84
Schema_Frame_OMC_References 40236473.93749741 ns/iter 45244321.42857546 ns/iter 0.89
Schema_Frame_OMC_Locations 40564495.117644794 ns/iter 50992756.461535186 ns/iter 0.80
Schema_Frame_ISO_Language_Locations 149409599.99998993 ns/iter 147022033.2000281 ns/iter 1.02
Schema_Iterator_ISO_Language 2715704.051383334 ns/iter 3226255.617390882 ns/iter 0.84
Schema_Frame_ISO_Language_Locations_To_JSON 143469437.49998787 ns/iter 134710166.50004232 ns/iter 1.07
Schema_Tracker_ISO_Language 60852666.70000919 ns/iter 59458166.69231345 ns/iter 1.02
Schema_Tracker_ISO_Language_To_JSON 22722501.171428382 ns/iter 19722944.057139102 ns/iter 1.15
Schema_Format_ISO_Language_To_JSON 150268760.50001192 ns/iter 143897364.5001056 ns/iter 1.04
Schema_Bundle_Meta_2020_12 2633312.9744546697 ns/iter 2733942.823719405 ns/iter 0.96
Schema_Frame_Many_Resources_References 366956687.5000214 ns/iter 369498021.0000267 ns/iter 0.99
Alterschema_Check_Readibility_ISO_Language_Set_3 271197722.3333406 ns/iter 231797750.00001732 ns/iter 1.17
Alterschema_Check_Readibility_OMC 60444858.30000212 ns/iter 51749708.333333425 ns/iter 1.17
EditorSchema_ForEditor_EmbeddedResources 16150795.4545455 ns/iter 16306498.951213898 ns/iter 0.99
URITemplateRouter_Create 17382.55637144543 ns/iter 21154.432800543753 ns/iter 0.82
URITemplateRouter_Match 177.60563771612846 ns/iter 241.38272580010673 ns/iter 0.74
URITemplateRouterView_Restore 12299.502088154082 ns/iter 15701.456836368749 ns/iter 0.78
URITemplateRouterView_Match 121.50427022639425 ns/iter 178.11102754870822 ns/iter 0.68

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

Copy link

@github-actions github-actions bot left a comment

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: d63c4c7 Previous: 53dced3 Ratio
URITemplateRouter_Create 11519.43313295199 ns/iter 14087.146084704294 ns/iter 0.82
URITemplateRouter_Match 157.93946113180147 ns/iter 181.77235459569764 ns/iter 0.87
URITemplateRouterView_Restore 3534.6531305001954 ns/iter 8243.196559443488 ns/iter 0.43
URITemplateRouterView_Match 103.26450658429067 ns/iter 115.95882955019941 ns/iter 0.89
EditorSchema_ForEditor_EmbeddedResources 13265029.660384962 ns/iter 14938600.191503901 ns/iter 0.89
Alterschema_Check_Readibility_ISO_Language_Set_3 199490470.66666028 ns/iter 230602590.6666491 ns/iter 0.87
Alterschema_Check_Readibility_OMC 30113400.521733403 ns/iter 35319872.79999953 ns/iter 0.85
Schema_Frame_WoT_References 5584082.333333148 ns/iter 6324472.666666954 ns/iter 0.88
Schema_Frame_OMC_References 25068061.310337033 ns/iter 28907654.41666569 ns/iter 0.87
Schema_Frame_OMC_Locations 23231412.433331873 ns/iter 27551950.07692307 ns/iter 0.84
Schema_Frame_ISO_Language_Locations 116868779.83333944 ns/iter 144854105.50000212 ns/iter 0.81
Schema_Iterator_ISO_Language 2520113.5309089296 ns/iter 2544560.7272724207 ns/iter 0.99
Schema_Frame_ISO_Language_Locations_To_JSON 255571496.33330786 ns/iter 290264621.0000057 ns/iter 0.88
Schema_Tracker_ISO_Language 46114417.066670895 ns/iter 50464188.499995545 ns/iter 0.91
Schema_Tracker_ISO_Language_To_JSON 34202261.28571899 ns/iter 34032100.09524368 ns/iter 1.01
Schema_Format_ISO_Language_To_JSON 123709409.0000331 ns/iter 134837919.399979 ns/iter 0.92
Schema_Bundle_Meta_2020_12 2244394.546619113 ns/iter 2367368.2203348954 ns/iter 0.95
Schema_Frame_Many_Resources_References 233507773.66666386 ns/iter 269575873.6666297 ns/iter 0.87
Pointer_Object_Traverse 46.80181193081016 ns/iter 46.02947338554048 ns/iter 1.02
Pointer_Object_Try_Traverse 24.217523272542035 ns/iter 22.721970418416507 ns/iter 1.07
Pointer_Push_Back_Pointer_To_Weak_Pointer 159.515187260953 ns/iter 164.41524628021568 ns/iter 0.97
Pointer_Walker_Schema_ISO_Language 3426968.0334929083 ns/iter 3452707.857843284 ns/iter 0.99
JSON_Array_Of_Objects_Unique 332.04748777372845 ns/iter 419.80020561090606 ns/iter 0.79
JSON_Parse_1 30817.748575177542 ns/iter 32741.6287311632 ns/iter 0.94
JSON_Parse_Real 42056.4738452338 ns/iter 44221.07063945476 ns/iter 0.95
JSON_Parse_Decimal 149575.0529574742 ns/iter 156974.29110204283 ns/iter 0.95
JSON_Fast_Hash_Helm_Chart_Lock 56.38846391686123 ns/iter 59.45402437981619 ns/iter 0.95
JSON_Equality_Helm_Chart_Lock 135.17959382351486 ns/iter 155.2730504866096 ns/iter 0.87
JSON_String_Equal/10 5.826119772496074 ns/iter 7.580356497795401 ns/iter 0.77
JSON_String_Equal/100 7.26551855720557 ns/iter 7.2782824487499385 ns/iter 1.00
JSON_String_Equal_Small_By_Perfect_Hash/10 0.8358977945927666 ns/iter 0.6235291622692638 ns/iter 1.34
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 12.963193179637516 ns/iter 19.570051532387684 ns/iter 0.66
JSON_String_Fast_Hash/10 2.669337744646069 ns/iter 2.308137491207026 ns/iter 1.16
JSON_String_Fast_Hash/100 2.664284407290565 ns/iter 2.31142916534685 ns/iter 1.15
JSON_String_Key_Hash/10 1.4398488320518308 ns/iter 1.2730949853010143 ns/iter 1.13
JSON_String_Key_Hash/100 11.824509138870619 ns/iter 12.433699923506056 ns/iter 0.95
JSON_Object_Defines_Miss_Same_Length 2.960220632984003 ns/iter 2.4981935948584235 ns/iter 1.18
JSON_Object_Defines_Miss_Too_Small 3.0310829460240605 ns/iter 2.7986950132731954 ns/iter 1.08
JSON_Object_Defines_Miss_Too_Large 3.1614162928152267 ns/iter 2.809530114685389 ns/iter 1.13
Regex_Lower_S_Or_Upper_S_Asterisk 2.3580724475475745 ns/iter 3.108585531737901 ns/iter 0.76
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 2.3296771081763765 ns/iter 3.108560770180891 ns/iter 0.75
Regex_Period_Asterisk 2.3447034480957134 ns/iter 3.108750797237591 ns/iter 0.75
Regex_Group_Period_Asterisk_Group 2.401385041424859 ns/iter 3.110780027908959 ns/iter 0.77
Regex_Period_Plus 2.311458163268285 ns/iter 2.798984131706841 ns/iter 0.83
Regex_Period 2.311225995265811 ns/iter 2.858004185606677 ns/iter 0.81
Regex_Caret_Period_Plus_Dollar 2.3324364380604967 ns/iter 2.7979193772314206 ns/iter 0.83
Regex_Caret_Group_Period_Plus_Group_Dollar 2.3829115249391313 ns/iter 2.8143534705631246 ns/iter 0.85
Regex_Caret_Period_Asterisk_Dollar 2.3109400398838265 ns/iter 4.051419061117602 ns/iter 0.57
Regex_Caret_Group_Period_Asterisk_Group_Dollar 2.4569824606982182 ns/iter 4.041500017483464 ns/iter 0.61
Regex_Caret_X_Hyphen 8.912627312202789 ns/iter 8.879223602959804 ns/iter 1.00
Regex_Period_Md_Dollar 30.45986559770457 ns/iter 36.21562006738276 ns/iter 0.84
Regex_Caret_Slash_Period_Asterisk 8.634683554034282 ns/iter 7.771297873305185 ns/iter 1.11
Regex_Caret_Period_Range_Dollar 2.681514526761919 ns/iter 4.041988167597105 ns/iter 0.66
Regex_Nested_Backtrack 48.88962647259663 ns/iter 60.24657700858862 ns/iter 0.81

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

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

Benchmark (macos/gcc)

Details
Benchmark suite Current: d63c4c7 Previous: 53dced3 Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 3.136976569743451 ns/iter 2.1617847122699776 ns/iter 1.45
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 2.919615257086935 ns/iter 2.202830424838108 ns/iter 1.33
Regex_Period_Asterisk 2.9115060843551337 ns/iter 2.230153438098999 ns/iter 1.31
Regex_Group_Period_Asterisk_Group 2.7546218867160266 ns/iter 2.2306575007528333 ns/iter 1.23
Regex_Period_Plus 2.7811743819310557 ns/iter 2.2983078798509338 ns/iter 1.21
Regex_Period 2.7464852809695093 ns/iter 2.3278948482773627 ns/iter 1.18
Regex_Caret_Period_Plus_Dollar 2.6726121790010233 ns/iter 2.323645542015803 ns/iter 1.15
Regex_Caret_Group_Period_Plus_Group_Dollar 2.580491841110376 ns/iter 2.2962094252346605 ns/iter 1.12
Regex_Caret_Period_Asterisk_Dollar 2.6916172129157117 ns/iter 2.163613418442522 ns/iter 1.24
Regex_Caret_Group_Period_Asterisk_Group_Dollar 2.8418402928196733 ns/iter 2.06784445532805 ns/iter 1.37
Regex_Caret_X_Hyphen 8.766871429539115 ns/iter 6.266759009662559 ns/iter 1.40
Regex_Period_Md_Dollar 31.17331570912384 ns/iter 20.984189534483132 ns/iter 1.49
Regex_Caret_Slash_Period_Asterisk 6.394130174137232 ns/iter 4.703111243131573 ns/iter 1.36
Regex_Caret_Period_Range_Dollar 3.1084750234840217 ns/iter 2.166620207882057 ns/iter 1.43
Regex_Nested_Backtrack 66.19187543428686 ns/iter 44.22501487931242 ns/iter 1.50
JSON_Array_Of_Objects_Unique 359.3647599770451 ns/iter 255.14174780523263 ns/iter 1.41
JSON_Parse_1 38113.454589681955 ns/iter 22398.829630827742 ns/iter 1.70
JSON_Parse_Real 34139.27521968978 ns/iter 25180.682942673968 ns/iter 1.36
JSON_Parse_Decimal 380660.7345609656 ns/iter 261705.57679654233 ns/iter 1.45
JSON_Fast_Hash_Helm_Chart_Lock 43.68921494521238 ns/iter 33.80500794937002 ns/iter 1.29
JSON_Equality_Helm_Chart_Lock 171.8245354440673 ns/iter 127.53884337375732 ns/iter 1.35
JSON_String_Equal/10 8.016180834464608 ns/iter 5.793789840819647 ns/iter 1.38
JSON_String_Equal/100 7.528802279171461 ns/iter 5.505039707043937 ns/iter 1.37
JSON_String_Equal_Small_By_Perfect_Hash/10 1.0354855471370015 ns/iter 0.8174541418799188 ns/iter 1.27
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 5.300079321497217 ns/iter 3.7941322795449093 ns/iter 1.40
JSON_String_Fast_Hash/10 2.2859237143782205 ns/iter 1.936155770913244 ns/iter 1.18
JSON_String_Fast_Hash/100 2.467518698392087 ns/iter 1.9368731775257009 ns/iter 1.27
JSON_String_Key_Hash/10 2.138409471369209 ns/iter 1.5043764185953206 ns/iter 1.42
JSON_String_Key_Hash/100 3.6063211695326056 ns/iter 2.6740812925434523 ns/iter 1.35
JSON_Object_Defines_Miss_Same_Length 2.6548470211138064 ns/iter 1.8068199562864267 ns/iter 1.47
JSON_Object_Defines_Miss_Too_Small 2.591476850696256 ns/iter 1.78830016335188 ns/iter 1.45
JSON_Object_Defines_Miss_Too_Large 2.627740639893584 ns/iter 1.785818583676619 ns/iter 1.47
Pointer_Object_Traverse 79.84218565030086 ns/iter 50.71227550506592 ns/iter 1.57
Pointer_Object_Try_Traverse 55.40689617704735 ns/iter 35.53676325117392 ns/iter 1.56
Pointer_Push_Back_Pointer_To_Weak_Pointer 232.1636792354643 ns/iter 153.45120038246705 ns/iter 1.51
Pointer_Walker_Schema_ISO_Language 5844548.217251769 ns/iter 3609047.03486151 ns/iter 1.62
Schema_Frame_WoT_References 7588413.723728113 ns/iter 5119888.782501221 ns/iter 1.48
Schema_Frame_OMC_References 40562016.62336077 ns/iter 27146192.697378304 ns/iter 1.49
Schema_Frame_OMC_Locations 37638857.96070099 ns/iter 25690626.21505172 ns/iter 1.47
Schema_Frame_ISO_Language_Locations 143025040.62652588 ns/iter 99649872.09865025 ns/iter 1.44
Schema_Iterator_ISO_Language 2813924.356285794 ns/iter 1842309.2516162728 ns/iter 1.53
Schema_Frame_ISO_Language_Locations_To_JSON 234314282.7351888 ns/iter 150675630.569458 ns/iter 1.56
Schema_Tracker_ISO_Language 60315077.12144118 ns/iter 38423392.507765025 ns/iter 1.57
Schema_Tracker_ISO_Language_To_JSON 35632572.676006116 ns/iter 23984317.12183459 ns/iter 1.49
Schema_Format_ISO_Language_To_JSON 163204252.71987915 ns/iter 107800926.48097447 ns/iter 1.51
Schema_Bundle_Meta_2020_12 2515819.429935894 ns/iter 1692088.5654410932 ns/iter 1.49
Schema_Frame_Many_Resources_References 398590445.51849365 ns/iter 279735008.875529 ns/iter 1.42
Alterschema_Check_Readibility_ISO_Language_Set_3 220268646.87601724 ns/iter 160071551.79977417 ns/iter 1.38
Alterschema_Check_Readibility_OMC 47241061.92588806 ns/iter 29582915.098770805 ns/iter 1.60
EditorSchema_ForEditor_EmbeddedResources 16663572.062616764 ns/iter 10212856.790293818 ns/iter 1.63
URITemplateRouter_Create 20324.217126406813 ns/iter 12941.725500456338 ns/iter 1.57
URITemplateRouter_Match 253.2382259448808 ns/iter 160.53504113072 ns/iter 1.58
URITemplateRouterView_Restore 18904.31191487865 ns/iter 8744.189613743833 ns/iter 2.16
URITemplateRouterView_Match 171.94109461398477 ns/iter 110.34540228673174 ns/iter 1.56

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

@jviotti jviotti merged commit 4867cd7 into main Jan 21, 2026
13 checks passed
@jviotti jviotti deleted the regex-copy-move branch January 21, 2026 13:44
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.

2 participants