Skip to content

Minor misc revisions to URITemplate#2154

Merged
jviotti merged 1 commit intomainfrom
uritemplate-refactor
Jan 1, 2026
Merged

Minor misc revisions to URITemplate#2154
jviotti merged 1 commit intomainfrom
uritemplate-refactor

Conversation

@jviotti
Copy link
Member

@jviotti jviotti commented Jan 1, 2026

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

Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
@augmentcode
Copy link

augmentcode bot commented Jan 1, 2026

🤖 Augment PR Summary

Summary: This PR makes small API and layout refinements to the RFC 6570 URITemplate implementation.

Changes:

  • Extracts URITemplateToken and its related token/spec structs into a new header: uritemplate_token.h, and includes it from uritemplate.h.
  • Updates the uritemplate CMake target metadata to ship the new token header alongside existing private headers.
  • Refines uritemplate.h standard-library includes to match the new split.
  • Ref-qualifies URITemplate::at() and adds an rvalue overload returning a token by value (move), preventing dangling references when called on temporaries.
  • Adds unit tests covering at() for const lvalues and rvalue/move usage.

Technical Notes: Tokens continue to be view-like (e.g., std::string_view-based), so the underlying template source lifetime requirements still apply.

🤖 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.

@jviotti jviotti merged commit c28a768 into main Jan 1, 2026
13 checks passed
@jviotti jviotti deleted the uritemplate-refactor branch January 1, 2026 15:19
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: fa2bc55 Previous: 90fa639 Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 3.113886873710107 ns/iter 3.11542576052628 ns/iter 1.00
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 3.1100664890437892 ns/iter 3.107357858170574 ns/iter 1.00
Regex_Period_Asterisk 3.1097649856934377 ns/iter 3.1113799555727804 ns/iter 1.00
Regex_Group_Period_Asterisk_Group 3.107638829028352 ns/iter 3.1084795294536574 ns/iter 1.00
Regex_Period_Plus 2.947426945773593 ns/iter 2.9095223433087725 ns/iter 1.01
Regex_Period 3.1083747003347253 ns/iter 3.1472735085959176 ns/iter 0.99
Regex_Caret_Period_Plus_Dollar 3.1034796753925775 ns/iter 3.109385256979959 ns/iter 1.00
Regex_Caret_Group_Period_Plus_Group_Dollar 2.9846116738794644 ns/iter 3.114907712193597 ns/iter 0.96
Regex_Caret_Period_Asterisk_Dollar 3.4188414914049745 ns/iter 3.107200848654619 ns/iter 1.10
Regex_Caret_Group_Period_Asterisk_Group_Dollar 3.1075773506789313 ns/iter 3.1071751993903387 ns/iter 1.00
Regex_Caret_X_Hyphen 12.437216579590647 ns/iter 7.461506970234326 ns/iter 1.67
Regex_Period_Md_Dollar 27.181638508524976 ns/iter 27.193134214389413 ns/iter 1.00
Regex_Caret_Slash_Period_Asterisk 7.150399141984711 ns/iter 6.8096235610392375 ns/iter 1.05
Regex_Caret_Period_Range_Dollar 4.060863847286943 ns/iter 3.109774242328808 ns/iter 1.31
Regex_Nested_Backtrack 50.18665740000188 ns/iter 52.768576891906115 ns/iter 0.95
JSON_Array_Of_Objects_Unique 414.8714508485128 ns/iter 411.84317604785235 ns/iter 1.01
JSON_Parse_1 29781.241522905 ns/iter 28953.535097145348 ns/iter 1.03
JSON_Parse_Real 37968.88494279141 ns/iter 37717.56199417284 ns/iter 1.01
JSON_Parse_Decimal 129403.21137459466 ns/iter 129761.58686401702 ns/iter 1.00
JSON_Fast_Hash_Helm_Chart_Lock 55.9384268064443 ns/iter 55.98616073915803 ns/iter 1.00
JSON_Equality_Helm_Chart_Lock 157.6910746595312 ns/iter 160.56526037647873 ns/iter 0.98
JSON_String_Equal/10 6.845520003920037 ns/iter 6.849475435118388 ns/iter 1.00
JSON_String_Equal/100 7.468847360037023 ns/iter 7.471078649294438 ns/iter 1.00
JSON_String_Equal_Small_By_Perfect_Hash/10 0.9410126890298736 ns/iter 0.9385386331442641 ns/iter 1.00
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 14.60624091548281 ns/iter 14.632768879237535 ns/iter 1.00
JSON_String_Fast_Hash/10 2.176903894985302 ns/iter 2.1772646548920425 ns/iter 1.00
JSON_String_Fast_Hash/100 2.1779385925507793 ns/iter 2.1793391080787066 ns/iter 1.00
JSON_String_Key_Hash/10 2.7100303554576612 ns/iter 2.659130235534301 ns/iter 1.02
JSON_String_Key_Hash/100 9.011714870520928 ns/iter 9.022392848835864 ns/iter 1.00
JSON_Object_Defines_Miss_Same_Length 3.7441018831217634 ns/iter 3.737153455557166 ns/iter 1.00
JSON_Object_Defines_Miss_Too_Small 3.736522970675282 ns/iter 3.7400241581635507 ns/iter 1.00
JSON_Object_Defines_Miss_Too_Large 3.7364671549438073 ns/iter 3.7381815015333295 ns/iter 1.00
Pointer_Object_Traverse 43.43772899790211 ns/iter 43.29418173941516 ns/iter 1.00
Pointer_Object_Try_Traverse 52.737839593842324 ns/iter 52.66506928990359 ns/iter 1.00
Pointer_Push_Back_Pointer_To_Weak_Pointer 305.551879350089 ns/iter 305.28617770625215 ns/iter 1.00
Schema_Frame_WoT_References 7343287.494736136 ns/iter 7339746.989583063 ns/iter 1.00
Schema_Frame_OMC_References 38041546.0555557 ns/iter 35736484.421052314 ns/iter 1.06
Schema_Frame_OMC_Locations 35362770.00000041 ns/iter 33188658.285715587 ns/iter 1.07
Schema_Frame_ISO_Language_Locations 169604209.24999654 ns/iter 161195268.00000018 ns/iter 1.05
Schema_Iterator_ISO_Language 3898755.6815646975 ns/iter 3867747.9670329853 ns/iter 1.01
Schema_PointerWalker_ISO_Language 4839683.048610747 ns/iter 4808766.438356562 ns/iter 1.01
Schema_Frame_ISO_Language_Locations_To_JSON 154404041.60001436 ns/iter 152183417.6000084 ns/iter 1.01
Schema_Tracker_ISO_Language 48456095.642856255 ns/iter 46688260.66667104 ns/iter 1.04
Schema_Tracker_ISO_Language_To_JSON 24902069.962965675 ns/iter 22471888.966667093 ns/iter 1.11
Schema_Format_ISO_Language_To_JSON 188006342.50001734 ns/iter 171317897.75004336 ns/iter 1.10
Schema_Bundle_Meta_2020_12 2189371.7750010923 ns/iter 2171684.931678208 ns/iter 1.01
Alterschema_Check_Readibility_ISO_Language_Set_3 295819465.0000223 ns/iter 285003480.499995 ns/iter 1.04
Alterschema_Check_Readibility_OMC 43031102.31249718 ns/iter 40481112.11765151 ns/iter 1.06

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: fa2bc55 Previous: 90fa639 Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 1.7253365460659085 ns/iter 1.590053196647668 ns/iter 1.09
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 1.7895181890353418 ns/iter 1.6426702565737215 ns/iter 1.09
Regex_Period_Asterisk 2.0098174390851176 ns/iter 1.6673085976436102 ns/iter 1.21
Regex_Group_Period_Asterisk_Group 1.9274277064548702 ns/iter 1.6965765030952447 ns/iter 1.14
Regex_Period_Plus 1.992755937538169 ns/iter 1.9720608040224081 ns/iter 1.01
Regex_Period 1.978758239325275 ns/iter 1.9691731093836298 ns/iter 1.00
Regex_Caret_Period_Plus_Dollar 1.9046752226057384 ns/iter 1.9245323249674793 ns/iter 0.99
Regex_Caret_Group_Period_Plus_Group_Dollar 1.8975909183271937 ns/iter 1.8929917905743314 ns/iter 1.00
Regex_Caret_Period_Asterisk_Dollar 1.5949894994584661 ns/iter 1.5802133985375824 ns/iter 1.01
Regex_Caret_Group_Period_Asterisk_Group_Dollar 1.5797390622816465 ns/iter 1.6834710613177724 ns/iter 0.94
Regex_Caret_X_Hyphen 5.9909358688688314 ns/iter 6.540608072927749 ns/iter 0.92
Regex_Period_Md_Dollar 18.61376163329533 ns/iter 19.85289469935239 ns/iter 0.94
Regex_Caret_Slash_Period_Asterisk 4.623854975180573 ns/iter 5.292168153625931 ns/iter 0.87
Regex_Caret_Period_Range_Dollar 1.6253423794868476 ns/iter 1.7971806574115297 ns/iter 0.90
Regex_Nested_Backtrack 26.39227464688233 ns/iter 28.386961833787076 ns/iter 0.93
JSON_Array_Of_Objects_Unique 367.54825717676914 ns/iter 328.0124335518147 ns/iter 1.12
JSON_Parse_1 21260.333333329854 ns/iter 19531.955885588846 ns/iter 1.09
JSON_Parse_Real 25341.685938052953 ns/iter 26368.028099053146 ns/iter 0.96
JSON_Parse_Decimal 271515.261572392 ns/iter 242980.63605093348 ns/iter 1.12
JSON_Fast_Hash_Helm_Chart_Lock 60.466794189096866 ns/iter 57.57412942098485 ns/iter 1.05
JSON_Equality_Helm_Chart_Lock 175.89777325040416 ns/iter 130.26380338372968 ns/iter 1.35
JSON_String_Equal/10 7.308355750706364 ns/iter 6.596887167098084 ns/iter 1.11
JSON_String_Equal/100 6.693170135346989 ns/iter 6.333420456430952 ns/iter 1.06
JSON_String_Equal_Small_By_Perfect_Hash/10 0.3342048249052752 ns/iter 0.3164110505938075 ns/iter 1.06
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 3.478974903833938 ns/iter 3.089477779040886 ns/iter 1.13
JSON_String_Fast_Hash/10 2.2787762413685373 ns/iter 2.1932911029334794 ns/iter 1.04
JSON_String_Fast_Hash/100 1.893774228410081 ns/iter 2.000556219710628 ns/iter 0.95
JSON_String_Key_Hash/10 1.2678462440424234 ns/iter 1.356193982061942 ns/iter 0.93
JSON_String_Key_Hash/100 1.9570614416404104 ns/iter 2.3570358241792984 ns/iter 0.83
JSON_Object_Defines_Miss_Same_Length 2.531533527556409 ns/iter 3.1666113106133364 ns/iter 0.80
JSON_Object_Defines_Miss_Too_Small 2.5251192039155166 ns/iter 2.756602179204483 ns/iter 0.92
JSON_Object_Defines_Miss_Too_Large 2.541657915985672 ns/iter 2.5986800142151187 ns/iter 0.98
Pointer_Object_Traverse 13.480822112315542 ns/iter 13.602932205543857 ns/iter 0.99
Pointer_Object_Try_Traverse 18.019500507357662 ns/iter 19.37761172000958 ns/iter 0.93
Pointer_Push_Back_Pointer_To_Weak_Pointer 150.44022316492922 ns/iter 149.88333729572054 ns/iter 1.00
Schema_Frame_WoT_References 6068765.086207224 ns/iter 6071937.137931102 ns/iter 1.00
Schema_Frame_OMC_References 40798450.42856721 ns/iter 34262819.428569116 ns/iter 1.19
Schema_Frame_OMC_Locations 36697684.21052235 ns/iter 41474671.27777797 ns/iter 0.88
Schema_Frame_ISO_Language_Locations 123672633.39997408 ns/iter 124305600.00000241 ns/iter 0.99
Schema_Iterator_ISO_Language 4059122.6034474927 ns/iter 3930269.505318959 ns/iter 1.03
Schema_PointerWalker_ISO_Language 6231455.4655186245 ns/iter 6888350.9310343675 ns/iter 0.90
Schema_Frame_ISO_Language_Locations_To_JSON 84339041.62498607 ns/iter 81258614.62499984 ns/iter 1.04
Schema_Tracker_ISO_Language 39552585.76470175 ns/iter 45739960.9375031 ns/iter 0.86
Schema_Tracker_ISO_Language_To_JSON 14638886.53191308 ns/iter 18779451.558139253 ns/iter 0.78
Schema_Format_ISO_Language_To_JSON 107843208.33333065 ns/iter 135591124.79997566 ns/iter 0.80
Schema_Bundle_Meta_2020_12 1508382.3738282647 ns/iter 1782482.1024239915 ns/iter 0.85
Alterschema_Check_Readibility_ISO_Language_Set_3 177019406.24999678 ns/iter 197264069.66666827 ns/iter 0.90
Alterschema_Check_Readibility_OMC 37283129.42105635 ns/iter 41408057.88888555 ns/iter 0.90

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: fa2bc55 Previous: 90fa639 Ratio
Alterschema_Check_Readibility_ISO_Language_Set_3 291936914.9999511 ns/iter 290718414.9999011 ns/iter 1.00
Alterschema_Check_Readibility_OMC 42238296.93749792 ns/iter 42764600.93748824 ns/iter 0.99
Schema_Frame_WoT_References 7987132.238636977 ns/iter 8034795.252878285 ns/iter 0.99
Schema_Frame_OMC_References 36952821.894745186 ns/iter 37646284.22221803 ns/iter 0.98
Schema_Frame_OMC_Locations 34321189.95000337 ns/iter 34810977.1000054 ns/iter 0.99
Schema_Frame_ISO_Language_Locations 184173658.2499607 ns/iter 185067950.2499588 ns/iter 1.00
Schema_Iterator_ISO_Language 4568852.562090565 ns/iter 4596401.703945743 ns/iter 0.99
Schema_PointerWalker_ISO_Language 4445537.337579092 ns/iter 5197430.492535883 ns/iter 0.86
Schema_Frame_ISO_Language_Locations_To_JSON 278928622.3332965 ns/iter 272006312.33336025 ns/iter 1.03
Schema_Tracker_ISO_Language 47359001.66665487 ns/iter 48041197.000020474 ns/iter 0.99
Schema_Tracker_ISO_Language_To_JSON 33114321.8571426 ns/iter 32971093.909075286 ns/iter 1.00
Schema_Format_ISO_Language_To_JSON 184999794.00002074 ns/iter 186622629.49987963 ns/iter 0.99
Schema_Bundle_Meta_2020_12 2362318.385132306 ns/iter 2372634.7499884493 ns/iter 1.00
Pointer_Object_Traverse 47.28871164560333 ns/iter 48.00820757423402 ns/iter 0.99
Pointer_Object_Try_Traverse 22.81207695797725 ns/iter 24.59268416607309 ns/iter 0.93
Pointer_Push_Back_Pointer_To_Weak_Pointer 169.95061795747057 ns/iter 148.48089685752558 ns/iter 1.14
JSON_Array_Of_Objects_Unique 382.98482674214057 ns/iter 385.1658236208979 ns/iter 0.99
JSON_Parse_1 33017.93523756355 ns/iter 32760.263143135555 ns/iter 1.01
JSON_Parse_Real 42986.359134854094 ns/iter 43416.66639725421 ns/iter 0.99
JSON_Parse_Decimal 154705.8026578269 ns/iter 154913.46235365007 ns/iter 1.00
JSON_Fast_Hash_Helm_Chart_Lock 50.13695069999358 ns/iter 55.80397115380778 ns/iter 0.90
JSON_Equality_Helm_Chart_Lock 154.45781850684102 ns/iter 152.91444158430127 ns/iter 1.01
JSON_String_Equal/10 6.035963584308231 ns/iter 6.339732444002531 ns/iter 0.95
JSON_String_Equal/100 6.654782696953535 ns/iter 6.9660147783553175 ns/iter 0.96
JSON_String_Equal_Small_By_Perfect_Hash/10 0.9345230350393209 ns/iter 0.9346359734015989 ns/iter 1.00
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 13.42442543620853 ns/iter 13.725090958819676 ns/iter 0.98
JSON_String_Fast_Hash/10 1.9041025765291448 ns/iter 1.9036251326642157 ns/iter 1.00
JSON_String_Fast_Hash/100 1.9047172972612638 ns/iter 1.9033757812732626 ns/iter 1.00
JSON_String_Key_Hash/10 1.5573841516954923 ns/iter 1.5645801849898986 ns/iter 1.00
JSON_String_Key_Hash/100 12.433211165994202 ns/iter 12.429807611288611 ns/iter 1.00
JSON_Object_Defines_Miss_Same_Length 2.495119927510843 ns/iter 2.490009195816759 ns/iter 1.00
JSON_Object_Defines_Miss_Too_Small 2.4910001013014496 ns/iter 2.4875082686596417 ns/iter 1.00
JSON_Object_Defines_Miss_Too_Large 2.488511713478703 ns/iter 2.4884974378302607 ns/iter 1.00
Regex_Lower_S_Or_Upper_S_Asterisk 3.110789637591568 ns/iter 3.1107067683197918 ns/iter 1.00
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 3.110118675890873 ns/iter 3.111622119873072 ns/iter 1.00
Regex_Period_Asterisk 3.1099759393197934 ns/iter 3.10905907753124 ns/iter 1.00
Regex_Group_Period_Asterisk_Group 3.1079940647734468 ns/iter 3.109399808823514 ns/iter 1.00
Regex_Period_Plus 3.419685090883016 ns/iter 3.4201224517534414 ns/iter 1.00
Regex_Period 3.42447940163718 ns/iter 3.425376226888407 ns/iter 1.00
Regex_Caret_Period_Plus_Dollar 3.109032988165284 ns/iter 3.4189069568808 ns/iter 0.91
Regex_Caret_Group_Period_Plus_Group_Dollar 3.11049130486268 ns/iter 3.4186026857767358 ns/iter 0.91
Regex_Caret_Period_Asterisk_Dollar 3.4237089227614153 ns/iter 4.3513897926227125 ns/iter 0.79
Regex_Caret_Group_Period_Asterisk_Group_Dollar 3.4204545311280796 ns/iter 4.36940724778581 ns/iter 0.78
Regex_Caret_X_Hyphen 13.685998769246678 ns/iter 13.061980759966895 ns/iter 1.05
Regex_Period_Md_Dollar 35.92368761701364 ns/iter 35.72083574160811 ns/iter 1.01
Regex_Caret_Slash_Period_Asterisk 9.330007368226255 ns/iter 9.325557437680269 ns/iter 1.00
Regex_Caret_Period_Range_Dollar 4.352378171525387 ns/iter 4.352148104580351 ns/iter 1.00
Regex_Nested_Backtrack 61.49682784915373 ns/iter 61.73297777872436 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: fa2bc55 Previous: 90fa639 Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 3.0537892857144096 ns/iter 3.0323656250012783 ns/iter 1.01
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 2.8490130790854815 ns/iter 2.8562143947719343 ns/iter 1.00
Regex_Period_Asterisk 3.226705317542482 ns/iter 3.219466446581865 ns/iter 1.00
Regex_Group_Period_Asterisk_Group 2.976448812977578 ns/iter 2.972105107626901 ns/iter 1.00
Regex_Period_Plus 3.5340755740461542 ns/iter 3.505356065952368 ns/iter 1.01
Regex_Period 3.5139278955115496 ns/iter 3.508673922305787 ns/iter 1.00
Regex_Caret_Period_Plus_Dollar 3.2243934425380987 ns/iter 3.209190473764838 ns/iter 1.00
Regex_Caret_Group_Period_Plus_Group_Dollar 2.9366344826737016 ns/iter 2.92952691833524 ns/iter 1.00
Regex_Caret_Period_Asterisk_Dollar 2.9721572728053194 ns/iter 2.965664616563869 ns/iter 1.00
Regex_Caret_Group_Period_Asterisk_Group_Dollar 2.8615982130086803 ns/iter 2.8459972755147 ns/iter 1.01
Regex_Caret_X_Hyphen 6.163943749998323 ns/iter 6.135351785713641 ns/iter 1.00
Regex_Period_Md_Dollar 33.3714989589332 ns/iter 31.75837080871983 ns/iter 1.05
Regex_Caret_Slash_Period_Asterisk 5.855662500000644 ns/iter 5.839222321429004 ns/iter 1.00
Regex_Caret_Period_Range_Dollar 3.413140786582201 ns/iter 3.4238482081717767 ns/iter 1.00
Regex_Nested_Backtrack 88.10939732141675 ns/iter 87.86680857736471 ns/iter 1.00
JSON_Array_Of_Objects_Unique 383.5636993635818 ns/iter 383.26787798788826 ns/iter 1.00
JSON_Parse_1 76840.98214286093 ns/iter 77219.20758930269 ns/iter 1.00
JSON_Parse_Real 98872.89062497472 ns/iter 100967.69787059144 ns/iter 0.98
JSON_Parse_Decimal 316633.38021566847 ns/iter 333586.0759494651 ns/iter 0.95
JSON_Fast_Hash_Helm_Chart_Lock 43.01993125000081 ns/iter 42.71730625001169 ns/iter 1.01
JSON_Equality_Helm_Chart_Lock 244.13009552121233 ns/iter 242.14078571438742 ns/iter 1.01
JSON_String_Equal/10 10.544910220780977 ns/iter 10.554034374997912 ns/iter 1.00
JSON_String_Equal/100 13.353229627885481 ns/iter 13.385126785716952 ns/iter 1.00
JSON_String_Equal_Small_By_Perfect_Hash/10 1.751089822991782 ns/iter 1.7359812065193927 ns/iter 1.01
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 9.370651297453533 ns/iter 9.610798617805127 ns/iter 0.98
JSON_String_Fast_Hash/10 2.2020068749995403 ns/iter 2.047580957535758 ns/iter 1.08
JSON_String_Fast_Hash/100 2.2262121845186753 ns/iter 2.0522258459232177 ns/iter 1.08
JSON_String_Key_Hash/10 2.6361338369319065 ns/iter 2.6650038592265832 ns/iter 0.99
JSON_String_Key_Hash/100 14.268186097015247 ns/iter 13.66215663543581 ns/iter 1.04
JSON_Object_Defines_Miss_Same_Length 4.9978589999977885 ns/iter 5.031136000002334 ns/iter 0.99
JSON_Object_Defines_Miss_Too_Small 4.160611404392402 ns/iter 4.207069484726754 ns/iter 0.99
JSON_Object_Defines_Miss_Too_Large 4.953658035714982 ns/iter 4.9511874999999295 ns/iter 1.00
Pointer_Object_Traverse 48.74238055228911 ns/iter 46.63734479102904 ns/iter 1.05
Pointer_Object_Try_Traverse 62.9326874999947 ns/iter 63.13421428574527 ns/iter 1.00
Pointer_Push_Back_Pointer_To_Weak_Pointer 177.49002081410129 ns/iter 181.11154295632588 ns/iter 0.98
Schema_Frame_WoT_References 16506380.487803986 ns/iter 16319224.39023916 ns/iter 1.01
Schema_Frame_OMC_References 77982499.99998714 ns/iter 75609755.55553442 ns/iter 1.03
Schema_Frame_OMC_Locations 71388866.66666621 ns/iter 69923511.11107887 ns/iter 1.02
Schema_Frame_ISO_Language_Locations 292862649.9999609 ns/iter 299175450.0001207 ns/iter 0.98
Schema_Iterator_ISO_Language 9592503.333333803 ns/iter 9566032.000002451 ns/iter 1.00
Schema_PointerWalker_ISO_Language 13348265.999998147 ns/iter 10903965.62500473 ns/iter 1.22
Schema_Frame_ISO_Language_Locations_To_JSON 226929833.3333154 ns/iter 221286133.33340278 ns/iter 1.03
Schema_Tracker_ISO_Language 108916428.571417 ns/iter 106316233.3333215 ns/iter 1.02
Schema_Tracker_ISO_Language_To_JSON 55153730.00000636 ns/iter 53624909.09088922 ns/iter 1.03
Schema_Format_ISO_Language_To_JSON 293980250.00011784 ns/iter 294643749.99997747 ns/iter 1.00
Schema_Bundle_Meta_2020_12 3903214.438516083 ns/iter 3739092.820528757 ns/iter 1.04
Alterschema_Check_Readibility_ISO_Language_Set_3 420198599.99993515 ns/iter 407971750.0001152 ns/iter 1.03
Alterschema_Check_Readibility_OMC 81177366.66667952 ns/iter 78166311.11109018 ns/iter 1.04

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: fa2bc55 Previous: 90fa639 Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 2.1431054270009415 ns/iter 2.0587898219832743 ns/iter 1.04
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 2.1405863099194624 ns/iter 2.0597693336720506 ns/iter 1.04
Regex_Period_Asterisk 2.141242189440466 ns/iter 2.083923850292896 ns/iter 1.03
Regex_Group_Period_Asterisk_Group 2.067915246860938 ns/iter 2.167207346654217 ns/iter 0.95
Regex_Period_Plus 2.2378345637057504 ns/iter 2.241093083509149 ns/iter 1.00
Regex_Period 2.2473635273193526 ns/iter 2.270877499953785 ns/iter 0.99
Regex_Caret_Period_Plus_Dollar 2.2338331737048214 ns/iter 2.2440383894464615 ns/iter 1.00
Regex_Caret_Group_Period_Plus_Group_Dollar 2.240500838745261 ns/iter 2.2786567515718845 ns/iter 0.98
Regex_Caret_Period_Asterisk_Dollar 2.1682208108770045 ns/iter 2.1780571213124 ns/iter 1.00
Regex_Caret_Group_Period_Asterisk_Group_Dollar 2.156457657721488 ns/iter 2.1709911344235016 ns/iter 0.99
Regex_Caret_X_Hyphen 6.5606192038200595 ns/iter 6.820626371334663 ns/iter 0.96
Regex_Period_Md_Dollar 24.507353172250955 ns/iter 22.507981457392887 ns/iter 1.09
Regex_Caret_Slash_Period_Asterisk 5.90924391593243 ns/iter 5.038368379786875 ns/iter 1.17
Regex_Caret_Period_Range_Dollar 2.1563322208460165 ns/iter 2.244654480486146 ns/iter 0.96
Regex_Nested_Backtrack 45.80944977289636 ns/iter 46.1651125433876 ns/iter 0.99
JSON_Array_Of_Objects_Unique 269.21940382966125 ns/iter 268.4278308255093 ns/iter 1.00
JSON_Parse_1 23607.030973539197 ns/iter 23206.05086442445 ns/iter 1.02
JSON_Parse_Real 24756.63756357725 ns/iter 23696.590627043228 ns/iter 1.04
JSON_Parse_Decimal 260203.5181787863 ns/iter 249773.91962466974 ns/iter 1.04
JSON_Fast_Hash_Helm_Chart_Lock 32.601609119803236 ns/iter 31.366855863541453 ns/iter 1.04
JSON_Equality_Helm_Chart_Lock 119.21786952517368 ns/iter 118.78992660356712 ns/iter 1.00
JSON_String_Equal/10 5.386481596700407 ns/iter 5.4146597944811266 ns/iter 0.99
JSON_String_Equal/100 5.132179800905788 ns/iter 5.344233738073604 ns/iter 0.96
JSON_String_Equal_Small_By_Perfect_Hash/10 0.7587159910330685 ns/iter 0.7936608957102749 ns/iter 0.96
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 3.8864170315456685 ns/iter 3.9721683116756212 ns/iter 0.98
JSON_String_Fast_Hash/10 1.9226575589803288 ns/iter 1.9658721838737592 ns/iter 0.98
JSON_String_Fast_Hash/100 1.924497681678819 ns/iter 1.9492264890983841 ns/iter 0.99
JSON_String_Key_Hash/10 1.6706055135301145 ns/iter 1.539923597108725 ns/iter 1.08
JSON_String_Key_Hash/100 2.6943727734734533 ns/iter 2.769062249184519 ns/iter 0.97
JSON_Object_Defines_Miss_Same_Length 1.8997191548717078 ns/iter 1.9270309569515633 ns/iter 0.99
JSON_Object_Defines_Miss_Too_Small 1.8770638896324927 ns/iter 1.926481227568113 ns/iter 0.97
JSON_Object_Defines_Miss_Too_Large 1.9096647326364928 ns/iter 1.865402381240354 ns/iter 1.02
Pointer_Object_Traverse 53.38025689914796 ns/iter 52.49914295748669 ns/iter 1.02
Pointer_Object_Try_Traverse 38.257737240079656 ns/iter 38.15075369654856 ns/iter 1.00
Pointer_Push_Back_Pointer_To_Weak_Pointer 159.93170894589582 ns/iter 160.92015819017107 ns/iter 0.99
Schema_Frame_WoT_References 7702665.858798557 ns/iter 7724892.525445847 ns/iter 1.00
Schema_Frame_OMC_References 37549897.244102076 ns/iter 40588995.989631206 ns/iter 0.93
Schema_Frame_OMC_Locations 35788452.62527466 ns/iter 38706673.51616754 ns/iter 0.92
Schema_Frame_ISO_Language_Locations 144707822.79968262 ns/iter 164871990.68069458 ns/iter 0.88
Schema_Iterator_ISO_Language 3496839.7725167586 ns/iter 3515740.6330108643 ns/iter 0.99
Schema_PointerWalker_ISO_Language 7790646.901944788 ns/iter 10448400.790874775 ns/iter 0.75
Schema_Frame_ISO_Language_Locations_To_JSON 129686450.95825195 ns/iter 157012999.05776978 ns/iter 0.83
Schema_Tracker_ISO_Language 38359114.99826532 ns/iter 40094719.9927436 ns/iter 0.96
Schema_Tracker_ISO_Language_To_JSON 28274357.318878174 ns/iter 25288105.010986328 ns/iter 1.12
Schema_Format_ISO_Language_To_JSON 166468918.32351685 ns/iter 175907194.6144104 ns/iter 0.95
Schema_Bundle_Meta_2020_12 1925140.954135509 ns/iter 2023186.9485643175 ns/iter 0.95
Alterschema_Check_Readibility_ISO_Language_Set_3 219655672.70914713 ns/iter 233419020.97066244 ns/iter 0.94
Alterschema_Check_Readibility_OMC 44646188.616752625 ns/iter 45688406.62638346 ns/iter 0.98

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

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