Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Fix destination_of on subschemas that are also resources #1531

Merged
merged 1 commit into from
Feb 7, 2025

Conversation

jviotti
Copy link
Member

@jviotti jviotti commented Feb 7, 2025

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

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)

Benchmark suite Current: 44e8749 Previous: e924303 Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 1.8680540316879026 ns/iter 1.595777926724378 ns/iter 1.17
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 1.7870177736487989 ns/iter 1.5767862094510263 ns/iter 1.13
Regex_Period_Asterisk 1.7065675365519812 ns/iter 1.6117374843588184 ns/iter 1.06
Regex_Group_Period_Asterisk_Group 1.8653655208018327 ns/iter 1.6771650466067445 ns/iter 1.11
Regex_Period_Plus 2.1454550299511874 ns/iter 2.012450370201417 ns/iter 1.07
Regex_Period 2.257490730307446 ns/iter 1.9968870678497137 ns/iter 1.13
Regex_Caret_Period_Plus_Dollar 2.125361169225682 ns/iter 1.9926779380915807 ns/iter 1.07
Regex_Caret_Group_Period_Plus_Group_Dollar 2.2031542691967316 ns/iter 2.0406953264153427 ns/iter 1.08
Regex_Caret_Period_Asterisk_Dollar 1.7529886175209708 ns/iter 1.7539415484013225 ns/iter 1.00
Regex_Caret_Group_Period_Asterisk_Group_Dollar 1.7022886293495543 ns/iter 1.7252361716310727 ns/iter 0.99
Regex_Caret_X_Hyphen 7.056628463552952 ns/iter 7.212102736365528 ns/iter 0.98
Regex_Period_Md_Dollar 74.3095000719682 ns/iter 71.79214995778551 ns/iter 1.04
Regex_Caret_Slash_Period_Asterisk 5.2720947545234935 ns/iter 5.627138684501986 ns/iter 0.94
Regex_Caret_Period_Range_Dollar 2.297534121127569 ns/iter 2.7982055023573214 ns/iter 0.82
Regex_Nested_Backtrack 871.7505109765902 ns/iter 754.5500152469967 ns/iter 1.16
JSON_Array_Of_Objects_Unique 359.30075144665807 ns/iter 356.64184379423057 ns/iter 1.01
JSON_Parse_1 24325.859044561414 ns/iter 24961.387020179856 ns/iter 0.97
JSON_Fast_Hash_Helm_Chart_Lock 75.48624688653028 ns/iter 49.092336672190356 ns/iter 1.54
JSON_Equality_Helm_Chart_Lock 165.12692562415998 ns/iter 123.58505563743478 ns/iter 1.34
JSON_String_Equal/10 7.958006206209522 ns/iter 7.888942806921001 ns/iter 1.01
JSON_String_Equal/100 6.31563172806694 ns/iter 6.148019665807752 ns/iter 1.03
JSON_String_Equal_Small_By_Perfect_Hash/10 0.31725743980112986 ns/iter 0.32836721511786127 ns/iter 0.97
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 2.988655791345163 ns/iter 3.131218594823668 ns/iter 0.95
JSON_String_Fast_Hash/10 1.6105454444266465 ns/iter 1.718455305476479 ns/iter 0.94
JSON_String_Fast_Hash/100 2.3468203740768163 ns/iter 2.0600690335088383 ns/iter 1.14
JSON_String_Key_Hash/10 1.300537889425532 ns/iter 1.3380822087941513 ns/iter 0.97
JSON_String_Key_Hash/100 1.2970670717836181 ns/iter 1.299426383848555 ns/iter 1.00
JSON_Object_Defines_Miss_Same_Length 2.3223085776882795 ns/iter 2.3541846798298525 ns/iter 0.99
JSON_Object_Defines_Miss_Too_Small 2.247516745182341 ns/iter 2.348429825111457 ns/iter 0.96
JSON_Object_Defines_Miss_Too_Large 2.2199688499389025 ns/iter 2.3753936081318736 ns/iter 0.93
Pointer_Object_Traverse 17.29997423784409 ns/iter 17.674690907279867 ns/iter 0.98
Pointer_Object_Try_Traverse 22.397439307341607 ns/iter 24.177531600593582 ns/iter 0.93
Pointer_Push_Back_Pointer_To_Weak_Pointer 176.5387447989302 ns/iter 180.70308951642025 ns/iter 0.98

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/llvm)

Benchmark suite Current: 44e8749 Previous: e924303 Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 2.2183525193566442 ns/iter 2.226182038595393 ns/iter 1.00
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 2.246085781089787 ns/iter 2.218769790406526 ns/iter 1.01
Regex_Period_Asterisk 2.1853249386225717 ns/iter 2.210251492452116 ns/iter 0.99
Regex_Group_Period_Asterisk_Group 2.2017938668282047 ns/iter 2.213750933761964 ns/iter 0.99
Regex_Period_Plus 2.8006127056814396 ns/iter 2.7993287248277556 ns/iter 1.00
Regex_Period 2.8009951349245124 ns/iter 2.7984374172232322 ns/iter 1.00
Regex_Caret_Period_Plus_Dollar 2.7982178866306113 ns/iter 2.800517076012382 ns/iter 1.00
Regex_Caret_Group_Period_Plus_Group_Dollar 2.798897283102218 ns/iter 2.8819924384149376 ns/iter 0.97
Regex_Caret_Period_Asterisk_Dollar 3.419633798725202 ns/iter 3.418866812820843 ns/iter 1.00
Regex_Caret_Group_Period_Asterisk_Group_Dollar 3.423009109668678 ns/iter 3.4160755752220116 ns/iter 1.00
Regex_Caret_X_Hyphen 13.099333674472204 ns/iter 13.107047755396009 ns/iter 1.00
Regex_Period_Md_Dollar 81.60999529016567 ns/iter 81.95636837261132 ns/iter 1.00
Regex_Caret_Slash_Period_Asterisk 6.846323170773791 ns/iter 6.848732621785712 ns/iter 1.00
Regex_Caret_Period_Range_Dollar 4.045398701626464 ns/iter 4.042605324308498 ns/iter 1.00
Regex_Nested_Backtrack 497.5545786462431 ns/iter 502.17636262224033 ns/iter 0.99
JSON_Array_Of_Objects_Unique 412.8559293202666 ns/iter 399.27689881206436 ns/iter 1.03
JSON_Parse_1 30365.928825004772 ns/iter 31027.8231749926 ns/iter 0.98
JSON_Fast_Hash_Helm_Chart_Lock 59.629757272382484 ns/iter 66.06517917899302 ns/iter 0.90
JSON_Equality_Helm_Chart_Lock 156.69256966422134 ns/iter 159.08699052355362 ns/iter 0.98
JSON_String_Equal/10 6.545589822900549 ns/iter 7.468975675448653 ns/iter 0.88
JSON_String_Equal/100 7.1596764239307085 ns/iter 8.090074027452188 ns/iter 0.88
JSON_String_Equal_Small_By_Perfect_Hash/10 0.9349997980359368 ns/iter 0.9343239016421264 ns/iter 1.00
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 10.257242359913972 ns/iter 10.255742397847856 ns/iter 1.00
JSON_String_Fast_Hash/10 2.4870970768040697 ns/iter 2.4867539514886374 ns/iter 1.00
JSON_String_Fast_Hash/100 2.4913239566986114 ns/iter 2.4859145658420068 ns/iter 1.00
JSON_String_Key_Hash/10 2.1799707455752957 ns/iter 2.1794890408140453 ns/iter 1.00
JSON_String_Key_Hash/100 1.8673523504972702 ns/iter 1.8945606804747113 ns/iter 0.99
JSON_Object_Defines_Miss_Same_Length 3.7347537048355934 ns/iter 3.7369033911917247 ns/iter 1.00
JSON_Object_Defines_Miss_Too_Small 3.734833207902208 ns/iter 3.7369457936890185 ns/iter 1.00
JSON_Object_Defines_Miss_Too_Large 3.7331695745590014 ns/iter 3.7530557990302196 ns/iter 0.99
Pointer_Object_Traverse 44.26321281317814 ns/iter 44.56879498891157 ns/iter 0.99
Pointer_Object_Try_Traverse 52.882613462052326 ns/iter 52.27037775025061 ns/iter 1.01
Pointer_Push_Back_Pointer_To_Weak_Pointer 308.935362102784 ns/iter 321.52388138849835 ns/iter 0.96

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)

Benchmark suite Current: 44e8749 Previous: e924303 Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 6.92652184407888 ns/iter 7.024202008929186 ns/iter 0.99
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 6.928681919643306 ns/iter 7.109476562498734 ns/iter 0.97
Regex_Period_Asterisk 7.376578125002047 ns/iter 6.911108258929995 ns/iter 1.07
Regex_Group_Period_Asterisk_Group 6.9702734374997375 ns/iter 6.8370937500006335 ns/iter 1.02
Regex_Period_Plus 7.471871651785834 ns/iter 7.327891741071925 ns/iter 1.02
Regex_Period 7.332845982145183 ns/iter 7.192583705357691 ns/iter 1.02
Regex_Caret_Period_Plus_Dollar 7.141818080356187 ns/iter 7.2806004464303395 ns/iter 0.98
Regex_Caret_Group_Period_Plus_Group_Dollar 7.294908482144028 ns/iter 7.174500000000401 ns/iter 1.02
Regex_Caret_Period_Asterisk_Dollar 6.983561607142974 ns/iter 7.110170758927329 ns/iter 0.98
Regex_Caret_Group_Period_Asterisk_Group_Dollar 6.955277901786262 ns/iter 7.169397321428659 ns/iter 0.97
Regex_Caret_X_Hyphen 14.27151339285615 ns/iter 11.97030156249923 ns/iter 1.19
Regex_Period_Md_Dollar 150.26859373801454 ns/iter 150.05655133674225 ns/iter 1.00
Regex_Caret_Slash_Period_Asterisk 11.063678571429948 ns/iter 10.35784687499941 ns/iter 1.07
Regex_Caret_Period_Range_Dollar 7.611910714285639 ns/iter 7.458284598213437 ns/iter 1.02
Regex_Nested_Backtrack 617.3013392857537 ns/iter 606.8341964286057 ns/iter 1.02
JSON_Array_Of_Objects_Unique 490.88320000009844 ns/iter 493.0554000000029 ns/iter 1.00
JSON_Parse_1 78926.3169643054 ns/iter 79938.86433642065 ns/iter 0.99
JSON_Fast_Hash_Helm_Chart_Lock 65.06800892856697 ns/iter 64.66511160714917 ns/iter 1.01
JSON_Equality_Helm_Chart_Lock 188.58770433822198 ns/iter 189.32757940428402 ns/iter 1.00
JSON_String_Equal/10 8.97014192424034 ns/iter 8.981002192049441 ns/iter 1.00
JSON_String_Equal/100 9.898769152238533 ns/iter 9.91205625000191 ns/iter 1.00
JSON_String_Equal_Small_By_Perfect_Hash/10 2.1668896874999177 ns/iter 2.188584687500139 ns/iter 0.99
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 16.238278462686033 ns/iter 14.831152165930716 ns/iter 1.09
JSON_String_Fast_Hash/10 4.0248058107583455 ns/iter 4.022363281250512 ns/iter 1.00
JSON_String_Fast_Hash/100 4.031400408984978 ns/iter 4.02341063218478 ns/iter 1.00
JSON_String_Key_Hash/10 7.872823625567455 ns/iter 7.894689732143182 ns/iter 1.00
JSON_String_Key_Hash/100 4.026480721475483 ns/iter 4.028065676835216 ns/iter 1.00
JSON_Object_Defines_Miss_Same_Length 3.7163748147915134 ns/iter 3.726439814774683 ns/iter 1.00
JSON_Object_Defines_Miss_Too_Small 4.95943482142991 ns/iter 4.979859000000033 ns/iter 1.00
JSON_Object_Defines_Miss_Too_Large 3.401302974064922 ns/iter 3.406289949275065 ns/iter 1.00
Pointer_Object_Traverse 48.74496708429333 ns/iter 50.38862000001245 ns/iter 0.97
Pointer_Object_Try_Traverse 67.50388392857434 ns/iter 67.63754464285756 ns/iter 1.00
Pointer_Push_Back_Pointer_To_Weak_Pointer 158.74243303569204 ns/iter 181.94763231676652 ns/iter 0.87

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)

Benchmark suite Current: 44e8749 Previous: e924303 Ratio
Pointer_Object_Traverse 46.529157175484656 ns/iter 46.800347235815536 ns/iter 0.99
Pointer_Object_Try_Traverse 26.155694321552524 ns/iter 26.146778871068623 ns/iter 1.00
Pointer_Push_Back_Pointer_To_Weak_Pointer 144.78489605005237 ns/iter 146.47476162762192 ns/iter 0.99
JSON_Array_Of_Objects_Unique 427.0103841364335 ns/iter 409.9526345359921 ns/iter 1.04
JSON_Parse_1 33453.93876673302 ns/iter 33203.34818138733 ns/iter 1.01
JSON_Fast_Hash_Helm_Chart_Lock 73.2608283984734 ns/iter 68.45978963068296 ns/iter 1.07
JSON_Equality_Helm_Chart_Lock 149.51323909013638 ns/iter 151.1741659487067 ns/iter 0.99
JSON_String_Equal/10 6.341111971889218 ns/iter 6.3396417866144095 ns/iter 1.00
JSON_String_Equal/100 6.981951855410589 ns/iter 6.9778351278291675 ns/iter 1.00
JSON_String_Equal_Small_By_Perfect_Hash/10 0.9337851521540794 ns/iter 0.9344979017272844 ns/iter 1.00
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 14.288209431888259 ns/iter 14.29321711798246 ns/iter 1.00
JSON_String_Fast_Hash/10 0.933076665867319 ns/iter 0.9324486483174672 ns/iter 1.00
JSON_String_Fast_Hash/100 0.932922139185517 ns/iter 0.932741022514723 ns/iter 1.00
JSON_String_Key_Hash/10 1.673606909989435 ns/iter 1.672138687047798 ns/iter 1.00
JSON_String_Key_Hash/100 1.9835227311906898 ns/iter 1.985361885467619 ns/iter 1.00
JSON_Object_Defines_Miss_Same_Length 2.508324389767274 ns/iter 2.497721206598921 ns/iter 1.00
JSON_Object_Defines_Miss_Too_Small 2.4871673727589196 ns/iter 2.4900581560545327 ns/iter 1.00
JSON_Object_Defines_Miss_Too_Large 3.1078530915664087 ns/iter 3.113192380401642 ns/iter 1.00
Regex_Lower_S_Or_Upper_S_Asterisk 3.4194668317121084 ns/iter 3.426344587482445 ns/iter 1.00
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 3.4187789240595583 ns/iter 3.419320841329902 ns/iter 1.00
Regex_Period_Asterisk 3.41985123682408 ns/iter 3.4267276587259485 ns/iter 1.00
Regex_Group_Period_Asterisk_Group 3.421024515867041 ns/iter 3.434795247827232 ns/iter 1.00
Regex_Period_Plus 3.8280840687791784 ns/iter 3.419661928566568 ns/iter 1.12
Regex_Period 3.7458239840443532 ns/iter 3.4189585088315937 ns/iter 1.10
Regex_Caret_Period_Plus_Dollar 3.73009087467886 ns/iter 3.419789759087618 ns/iter 1.09
Regex_Caret_Group_Period_Plus_Group_Dollar 3.733603699218228 ns/iter 3.4364055721336206 ns/iter 1.09
Regex_Caret_Period_Asterisk_Dollar 4.735414507896468 ns/iter 3.4241275743319313 ns/iter 1.38
Regex_Caret_Group_Period_Asterisk_Group_Dollar 4.662750851935787 ns/iter 3.425389126025182 ns/iter 1.36
Regex_Caret_X_Hyphen 12.434192875411654 ns/iter 13.141508781957933 ns/iter 0.95
Regex_Period_Md_Dollar 89.42214385500819 ns/iter 88.96868744127957 ns/iter 1.01
Regex_Caret_Slash_Period_Asterisk 8.079613718819587 ns/iter 6.838919651640407 ns/iter 1.18
Regex_Caret_Period_Range_Dollar 4.6618982215980465 ns/iter 3.7281651806822955 ns/iter 1.25
Regex_Nested_Backtrack 818.3395035299665 ns/iter 826.9247853343498 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/gcc)

Benchmark suite Current: 44e8749 Previous: e924303 Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 1.8928897874913666 ns/iter 2.0668864025070866 ns/iter 0.92
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 1.9124740362585972 ns/iter 2.100010458423603 ns/iter 0.91
Regex_Period_Asterisk 1.8918704593170508 ns/iter 1.9910153523246268 ns/iter 0.95
Regex_Group_Period_Asterisk_Group 1.9002128339792825 ns/iter 2.1328837005037897 ns/iter 0.89
Regex_Period_Plus 1.630125595379995 ns/iter 1.663555023206399 ns/iter 0.98
Regex_Period 1.5890371767865556 ns/iter 1.5970398637120231 ns/iter 0.99
Regex_Caret_Period_Plus_Dollar 1.6301209467044178 ns/iter 1.6674648161950394 ns/iter 0.98
Regex_Caret_Group_Period_Plus_Group_Dollar 1.6116538301426966 ns/iter 1.5894196357496535 ns/iter 1.01
Regex_Caret_Period_Asterisk_Dollar 1.9075469431740621 ns/iter 1.8998308742999022 ns/iter 1.00
Regex_Caret_Group_Period_Asterisk_Group_Dollar 1.9023600481013985 ns/iter 1.9229066761006874 ns/iter 0.99
Regex_Caret_X_Hyphen 6.140313232096328 ns/iter 6.2018164698246405 ns/iter 0.99
Regex_Period_Md_Dollar 71.56163550644638 ns/iter 72.72708332955494 ns/iter 0.98
Regex_Caret_Slash_Period_Asterisk 4.568482032619769 ns/iter 4.731906010303136 ns/iter 0.97
Regex_Caret_Period_Range_Dollar 1.925166012826756 ns/iter 1.9986148806098367 ns/iter 0.96
Regex_Nested_Backtrack 846.5580789871497 ns/iter 896.8915622744267 ns/iter 0.94
JSON_Array_Of_Objects_Unique 224.23453388369484 ns/iter 225.7524788288214 ns/iter 0.99
JSON_Parse_1 23377.25732249086 ns/iter 26465.809419714562 ns/iter 0.88
JSON_Fast_Hash_Helm_Chart_Lock 23.986099150144405 ns/iter 27.631795965210696 ns/iter 0.87
JSON_Equality_Helm_Chart_Lock 116.61819530048626 ns/iter 132.3811461289575 ns/iter 0.88
JSON_String_Equal/10 5.489309781456381 ns/iter 5.717588314457684 ns/iter 0.96
JSON_String_Equal/100 5.091263520079466 ns/iter 5.425196230174905 ns/iter 0.94
JSON_String_Equal_Small_By_Perfect_Hash/10 0.7548829635624776 ns/iter 0.8498662512014389 ns/iter 0.89
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 3.4820129401855198 ns/iter 3.7095117302667346 ns/iter 0.94
JSON_String_Fast_Hash/10 1.9242397147131105 ns/iter 1.9963887863114451 ns/iter 0.96
JSON_String_Fast_Hash/100 1.9525366105110133 ns/iter 2.1598973217953987 ns/iter 0.90
JSON_String_Key_Hash/10 1.6263700790998399 ns/iter 1.4467854623336653 ns/iter 1.12
JSON_String_Key_Hash/100 1.9662974744529778 ns/iter 2.229337004767761 ns/iter 0.88
JSON_Object_Defines_Miss_Same_Length 1.7556705765446772 ns/iter 1.8653372732818732 ns/iter 0.94
JSON_Object_Defines_Miss_Too_Small 1.9131430301846784 ns/iter 2.0453381535473802 ns/iter 0.94
JSON_Object_Defines_Miss_Too_Large 1.7464253776687686 ns/iter 1.7555646168245445 ns/iter 0.99
Pointer_Object_Traverse 52.442023783269235 ns/iter 54.05081341803863 ns/iter 0.97
Pointer_Object_Try_Traverse 36.7712848964618 ns/iter 38.78272492426 ns/iter 0.95
Pointer_Push_Back_Pointer_To_Weak_Pointer 157.4371052487659 ns/iter 181.99649848697683 ns/iter 0.87

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

@jviotti jviotti merged commit f451b12 into main Feb 7, 2025
13 checks passed
@jviotti jviotti deleted the fix-destination-of branch February 7, 2025 20:15
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