-
-
Notifications
You must be signed in to change notification settings - Fork 444
[3.0] Implement name-related improvements identified in previous Vulkan PR #2503
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
Merged
Perksey
merged 341 commits into
dotnet:develop/3.0
from
Exanite:feature/vulkan-bindings-3.0-improvements
Jan 11, 2026
Merged
Changes from all commits
Commits
Show all changes
341 commits
Select commit
Hold shift + click to select a range
1b3b89a
Allow multiple NameAffix attributes to be used on one identifier
Exanite b8f385d
Cleanup
Exanite 3052bdc
Don't process secondaries when adding to outputing to newNames dictio…
Exanite a670548
Fix incorrect rename
Exanite 4d05314
Remove acronym identification in order to make all names be strictly …
Exanite d343503
Regenerate all bindings on Linux after changing acronyms to be pascal…
Exanite a9029f7
Update acronyms in names to be pascal cased and fix compile errors
Exanite 60909ef
Remove NameUtils.Prettify allowAllCaps parameter
Exanite 62351e8
Remove transformer from NameUtils.Prettify API and prevent unnecessar…
Exanite f0f8efa
Properly prettify the prettify only names if no trimmer baseline is s…
Exanite fb41785
Cleanup code
Exanite 285540f
Refactor name affix API
Exanite 3ec520b
Implement name affix handling
Exanite 286d85b
Add prefix override for VkMemoryDecompressionMethodFlagsEXT
Exanite a5ea18a
Improve NameUtils.Prettify error messages
Exanite fc068a6
Add VendorSuffixIdentifierExclusions to MixKhronosData config
Exanite 07af5dc
Regenerate SDL and OpenAL bindings. OpenGL needs more work. SDL has n…
Exanite a659a82
Remove now unnecessary _T trimming code
Exanite ab1aa5d
Remove unused code
Exanite 13ffcfe
Remove ExtensionVendorTrimmingMode
Exanite 8838125
Add todos
Exanite 27a7750
Add NameAffixerLateTrimmer back and use prettify prevention hack to g…
Exanite 990f560
Merge branch 'feature/vulkan-bindings-3.0-name-affixer' into feature/…
Exanite 25484bf
Fix a few compile errors
Exanite 572d225
Handle method vendor suffixes and remove vendor suffix capitalization…
Exanite a853fd6
Add NativeName attribute for function pointer structs and delegates
Exanite 8e12ba7
Ensure delegate vendor extensions are identified properly
Exanite af59554
Cleanup
Exanite d91bcd7
Update generator configs for other jobs and also strip NameAffix attr…
Exanite 7415297
Add TransformEnums mod to all jobs
Exanite 322cc7b
Ignore cast expressions when deciding whether to rewrite enum members…
Exanite c3540a8
Regenerate SDL (inconsistent generation?)
Exanite 8eded53
Fix non strict pascal casing in generator config
Exanite cfc8ac9
Prevent struct method names from getting trimmed
Exanite 880957b
Rename VendorSuffixIdentifierExclusions to VendorSuffixIdentification…
Exanite a720617
Fix compile error
Exanite ed90465
Update comments
Exanite 2f09e5b
Add AttributeUtils.GetNativeNameOrDefault()
Exanite c0e6bcb
Attempt to reimplement exclusive vendor suffix trimming code. Results…
Exanite 1e067ac
Remove the now unnecessary rewind code
Exanite d9d62be
Temporarily remove data type trimming code
Exanite eb0f8e9
Fix ALC_INVALID_CONTEXT being prettified as InvalidContEXT
Exanite 51023e2
Organize configuration for MixKhronosData and pre-emptively add new o…
Exanite 2004a92
Add configuration options for TrimEnumTypeNonExclusiveVendors and Tri…
Exanite 9c263b4
Replace TrimEnumMemberExclusiveVendors with TrimEnumMemberImpliedVend…
Exanite e30d2ec
Decide not to special case OpenGL's SamplePatternSGIS
Exanite 124cd1b
Optimize/cleanup trimming code
Exanite a34ce36
Attempt to implement data type trimming, but not working yet due to f…
Exanite a3437cc
Merge branch 'feature/vulkan-bindings-3.0-improvements-enum-vendor-tr…
Exanite b112a60
Edit doc comment for NameAffix
Exanite f0c674e
Add discriminator priority to NameAffix attribute
Exanite 8cbed7e
Add ToString implementations for CandidateNames structs for easier de…
Exanite 596a6aa
Add comment explaining PreventPrettificationHack
Exanite 1712060
Avoid adding redundant secondaries
Exanite 90bb541
Merge branch 'feature/vulkan-bindings-3.0-improvements' into feature/…
Exanite 39b782c
Regen OpenAL on Linux
Exanite fb55107
Change secondaries to be non-nullable since I allocate all of them an…
Exanite e3236b0
Regen OpenGL on Linux
Exanite 82d3b7f
Disable stripping for NameAffix attributes in OpenAL for easier debug…
Exanite 76fb8cf
Rework the NameAffix properties and what they do again
Exanite 67c7867
Update config options and adjust docs a bit more
Exanite 32d4e64
Edit docs
Exanite eaa93cb
Store the NameAffixAttribute declaration order
Exanite b7428f5
Update order and priority of data type suffixes
Exanite 2ea6a43
Attempt to get data trimming working and apparently fix a few bugs in…
Exanite 24ce296
Fix AL_VOCAL_MORPHER_PHONEME_T's -T suffix getting trimmed
Exanite b0bff43
Edit doc comment on NameAffixerEarlyTrimmer.Version
Exanite 1023090
Regenerate all bindings on Linux
Exanite 3f575ff
Strip all NameAffix attributes for OpenAL since I'm no longer debugging
Exanite 9a90036
Sort and ensure consistent attribute targets for NativeName and NameA…
Exanite 8dcd207
Fix formatting
Exanite 22a2c95
Don't mark parameters with the NativeName attribute
Exanite 1536c15
Add INameTrimmer.Order property and sort trimmers by that instead of …
Exanite 97586d6
Fix OpenAL's alSourceRewindv getting trimmed as alSourceRewin
Exanite f414752
Fix incorrect range indexing
Exanite 58524e3
Change prettification to occur before affixes are re-added
Exanite 5cc9c6e
Rename NameAffix.Priority to DiscriminatorPriority for clarity
Exanite f75dd7f
Cleanup RewriterPhase3 code in MixKhronosData
Exanite 8fe7404
Fix incorrect hasSetter condition causing properties to be incorrectl…
Exanite fbcb049
Fix TexStorageAttribs and ContainerType getting over trimmed
Exanite 682a261
Fix enums created by MixKhronosData not having their enum values rewr…
Exanite 7b45449
Regenerate bindings on Windows
Exanite 558a8b1
Fix compile errors in tests
Exanite e9c9f39
Exclude SDL_SetWindowsMessageHook
Exanite cd5b2c9
Exclude SDL_FILE, SDL_LINE, SDL_NULL_WHILE_LOOP_CONDITION
Exanite c7300c3
Fix compile errors and update windowing code to use strict pascal cas…
Exanite 9c9fbfc
Revert after review: Revert all generated bindings changes
Exanite 5cd9029
Revert incorrect OpenGL capitalization changes in SdlContext
Exanite fac347c
Revert incorrect OpenGL capitalization changes in SdlSurfaceComponent…
Exanite a1c0f23
Revert "Revert after review: Revert all generated bindings changes"
Exanite 48d182f
Begin reverting acronym casing change
Exanite 16f5753
Update openal-soft submodule
Exanite 53fbdd3
Revert change to EGLPlatformInfo
Exanite 8aefc51
Regenerate bindings on Windows
Exanite 9bbf8be
Revert after review: Revert all generated bindings changes
Exanite 4634117
Revert changes to ContextSourceExtensions
Exanite 787081a
Revert changes to SdlEventProcessor
Exanite 2fa139f
Revert changes to SdlSurfaceComponents
Exanite 8a2d826
Revert "Revert after review: Revert all generated bindings changes"
Exanite 167ef88
Add Rewindv to EndingsNotToTrim
Exanite 933e1bc
Add more comments on enum vendor suffix trimming
Exanite e6c339b
Add Rewindv to EndingsNotToTrim
Exanite 12ccb9c
Add more comments on enum vendor suffix trimming
Exanite 87aed8e
Add example for isSafeToTrimType and move condition to a named variab…
Exanite c891fcd
Add example for isSafeToTrimType and move condition to a named variab…
Exanite b0f0794
Add comment shouldTrimType
Exanite 869aaf3
Add comment on intended use of Order and DiscriminatorPriority proper…
Exanite c998b96
Merge branch 'feature/vulkan-bindings-3.0-improvements' into feature/…
Exanite 4e867bd
Implement new name affix category approach
Exanite 4a2a4da
Add validation for name affix category configs
Exanite 4a617e4
Adjust API of AddNamePrefix/Suffix extensions and add more docs
Exanite 5d41abe
Update existing name affix identification code to use new API
Exanite 09c55c4
Update enum vendor suffix identification comments to be consistent wi…
Exanite 58babdf
Shorten PrettifyNames.NameAffixes config option to just Affixes
Exanite c743f1e
Fix incorrect default value for DiscriminatorPriority
Exanite 656c2a9
Shorten name of DiscriminatorPriority configuration option
Exanite 25a64ad
Update generator.json to use new name affix config
Exanite 139ddc8
Add name affix attributes for -Internal (intercepted) and -Raw functions
Exanite 1b28db8
Fix incorrect parameter order (oops)
Exanite 3ebfbeb
Configure RawFunction and InterceptedFunction categories
Exanite 9b351b5
Redesign config and begin updating implementation to support new config
Exanite d160d8b
New name affix config compiles, but logic has not been updated
Exanite d51fe8b
Update name affix configs in generator.json
Exanite 1ad47d5
Update name affix removal/application code to work with new config
Exanite e00365a
Fix incorrect sort order
Exanite fdbbc9a
Add temporary hack to fix -OES being trimmed as -O issue
Exanite 867ae6e
Merge remote-tracking branch 'dotnet/Silk.NET/develop/3.0' into featu…
Exanite 5a59979
Regenerate on Windows and remove old cache files
Exanite 6b9cdda
Reorder KhronosVendor suffixes to be last
Exanite 7eaa45c
Merge branch 'develop/3.0' into feature/csharpier-files-modified-by-m…
Exanite 4dffd37
Format all files changed in my name improvements set of PRs
Exanite 548c482
Format again by rerunning exact same command as previous commit
Exanite e2fd822
Rewrite NameAffix arg parsing code to look better under CSharpier for…
Exanite d6bddf9
Merge pull request #25 from Exanite/feature/csharpier-files-modified-…
Exanite 600a199
Merge pull request #24 from Exanite/feature/khronos-vendor-last
Exanite 59eb9f4
Merge pull request #23 from Exanite/feature/name-affixes-categories-u…
Exanite 1f58200
Merge pull request #21 from Exanite/feature/name-affix-categories
Exanite 649c165
Merge pull request #19 from Exanite/feature/vulkan-bindings-3.0-impro…
Exanite f33d592
Remove affixes before global prefix identification; Change NameTrimme…
Exanite 0c94017
Add DummyJobDependency and DummyOptions for use during testing
Exanite ce42983
Add 3 unit tests to replace OverzealousNameTrimming test case and com…
Exanite b957693
Add test case: MixKhronosData_IdentifiesImpliedVendorSuffixes
Exanite 15e7d68
Add test case: MixKhronosData_IdentifiesNonExclusiveVendorSuffixes
Exanite 430d677
Add new TestUtils class with TestUtils.CreateTestProject
Exanite bb0e972
Add test case: PrettifyNames_TrimsSharedPrefix_AfterRemovalOf_VendorS…
Exanite 6939c12
Remove unused null assertion
Exanite 2eed1c8
Simplify tests and apparently MixKhronosData should read the config f…
Exanite 7a81cce
Move CandidateNamesWithOriginal to NameTrimmer and rename to Augmente…
Exanite 8750539
Verify result of PrettifyNames_TrimsSharedPrefix_AfterRemovalOf_Vendo…
Exanite cb09259
Replace OverzealousNameTrimmingFixupIsNotOverzealousForOpenAL test ca…
Exanite 1949ccd
Move PrettifyNames tests to a new file
Exanite 0af303a
Simplify and cleanup PrettifyNames tests
Exanite af5cb34
Fix syntax error in test code
Exanite 7ca3726
Shorten test names
Exanite 1bcd089
Fix incorrect document name
Exanite 53ae559
Add PrettifyNames tests: TrimsPrefix_WhenMatchingHint and DoesNotTrim…
Exanite 9d7e0d0
Fix incorrect comment
Exanite 66549f3
Add default value for LongAcronymThreshold and change type from int? …
Exanite 1167d7a
Add PrettifyNames test: TrimsSharedPrefix_ForTypes
Exanite ac64219
Add tests: HintShouldNotAffectSharedPrefixTrimming and HintShouldNotA…
Exanite ab8a973
Dictionary is no longer nullable
Exanite 7d00fac
Use Append instead of Concat+Repeat
Exanite 9b668cb
Edit comment for clarity
Exanite 32c9458
Replace use of ternary since it makes the code really annoying to debug
Exanite 15332b9
Fix DoesNotTrimTypeName_WhenNotMatchingHint_AndOnlyOneType
Exanite e720a5c
Remove unnecessary affix since it doesn't affect whether the test fai…
Exanite 216ffbf
Fix TrimsSharedPrefix_WhenAffixesDeclared and HintShouldNotAffectShar…
Exanite 320c58b
Add NameUtilsTests and rename NameTests to NameTrimmerTests
Exanite 2635aa3
Add failing test: Prettify_IsNotAffectedBy_TrailingUnderscore
Exanite cbc3e61
Fix Prettify_IsNotAffectedBy_TrailingUnderscore by trimming input
Exanite fc82c8a
Rename and accept result of Regression_UnexpectedCasingChangesInForma…
Exanite 4bbb3fc
Add tests: Prettify_Capital_AfterNumber_DoesNotAffect_PreviousWord an…
Exanite e477fe4
Prefilter matches for null or whitespace to avoid possibility of any …
Exanite 3950939
Rename matches to words for clarity
Exanite c5327f3
Add expected result of InconsistentCasing_LettersFollowingNumbers_Whe…
Exanite f2bae68
Add new PrettifyTests file and move Prettify-related tests to it
Exanite 2faf9d4
Change Prettify to be strictly for C# identifiers
Exanite 5839fe0
Move Prettify to be next to NameTransformer since they strictly work …
Exanite 5761756
Add set of tests: PrettifyTests.CommonCases
Exanite ab6b145
Redesign Prettify API and make NamePrettifier its own standalone class
Exanite 4827fa9
Add more tests
Exanite 81cd52c
Add more tests
Exanite a1e5e48
Add more test cases for Prettify
Exanite 5f64b30
Merge branch 'feature/mixkhronosdata-tests' into feature/prettify-rew…
Exanite d75083c
Add test Lowercase_AfterNumber_IsPartOf_PreviousWord
Exanite 8b9e447
Rename PrettifyTests to NamePrettifierTests
Exanite d419a78
Attempt 1 at writing word breaker
Exanite 62c322d
Implement new word splitter
Exanite be776f0
Cleanup
Exanite bb9f3ad
Add word fragment merging
Exanite 8984746
Add two more prettify tests
Exanite 33de611
Add more test cases
Exanite d688a11
Fix incorrect test cases
Exanite c5611c2
Implement new prettifier (almost fully working)
Exanite 0e03f1f
Remove debug and placeholder code
Exanite a266ee7
Update expected result of PrettifyNamesTests.Regression_UnexpectedCas…
Exanite 625bb6e
Use try-finally to update tracking variable; uhh kinda cursed but thi…
Exanite 138d81c
Change IsAcronym to also check the word length
Exanite bea2c50
Accept new changes to PrettifyNamesTests.InconsistentCasing_LettersFo…
Exanite c04951c
Accept changes to PrettifyNamesTests.TrimsSharedPrefix (this is corre…
Exanite 4d5eb00
Clarify comments
Exanite c33df8e
Handle case where the identifier is all caps
Exanite 7cff93f
Fix incorrect test cases caused by bad assumptions
Exanite 41f9be7
Organize NamePrettifier tests and add comments
Exanite d7cd7ec
Fix a few regressions
Exanite 2a20af7
Add NameSplitterTests
Exanite a81938b
Temporarily disable acronym conflict resolution
Exanite eb9e0b9
Remove old code
Exanite 9c6da23
Add more NameSplitterTests
Exanite d3a3d56
Apply the stdint remap to all current bindings
Exanite 515b089
Exclude ALC_CPLUSPLUS
Exanite 85c2d4d
Change expected output for lowercase fragments so that they are capit…
Exanite e70102d
Add test: Regression_IncorrectSecondary_ChosenAsFallback
Exanite 27c6430
Fix PrettifyNamesTests.Regression_IncorrectSecondary_ChosenAsFallback…
Exanite 45b81d7
Also exclude AL_CPLUSPLUS
Exanite 151ac97
Change MixKhronosData to identify the GL- prefix of GLEnum instead of…
Exanite 039c7b9
Add test case for splitting SpvImageFormatR32ui
Exanite a2addf4
Add UpperCaseFirstCharacter utility function
Exanite 06a1108
Short all uppercase names are now finally handled properly?
Exanite e383cf4
Rename Regressions test case to AcronymsWithNumbers
Exanite f43f315
Reorder tests
Exanite 4f9b44c
Add comment
Exanite 0809b78
Also remap GLintptrARB and GLsizeiptrARB
Exanite 9c9afc6
Add docs to new NamePrettifier and cleanup
Exanite fd1c595
Ignore lowercase "x" when checking if name is all non-lowercase
Exanite 9690af3
Regenerate on Windows (part 1 due to case insensitivity)
Exanite a664baf
Regenerate on Windows (part 2 due to case insensitivity)
Exanite e4934e5
Add more NamePrettifier tests
Exanite e05cebe
Adjust acronym threshold for N3D AcronymsWithNumbers test case
Exanite 668140d
Fix invalid tests
Exanite 8cad462
Add another test case
Exanite 134ff78
Lowercase "X" if it is between two numbers
Exanite 77888c1
Implement acronym conflict checking and add more tests
Exanite 5f07235
Regenerate on Linux since Windows case insensitivity sucks
Exanite 9f49ca1
Regenerate on Windows
Exanite 17509b8
Move name splitting and char categorization code out of NamePrettifier
Exanite 23f5ac8
Add todo for TrimsSharedPrefix_ForTypes test case
Exanite b218e9e
Fix PrettifyNamesTests.TrimsSharedPrefix_ForTypes
Exanite 4e1be7a
Clean up my prefix trimming fix
Exanite 79530c9
Change default LongAcronymThreshold to 2
Exanite 45218a8
Generate on Linux to avoid Windows case insensitivity issues
Exanite 7bee433
Regenerate on Windows
Exanite e3147e7
Replace EGL with Egl where it makes sense to do so
Exanite 8deb8f0
Add remark comment explaining why the default is 2
Exanite 88aabe4
Update expected test outputs
Exanite 25f2f6a
Fix casing of NumAabBs by overriding it
Exanite bd45d4c
Don't scope the NameOverride for numAABBs
Exanite 207108b
Revert incorrect comment change (these refer to native types outside …
Exanite e5b8eb9
Merge pull request #29 from Exanite/feature/acronym-threshold
Exanite ac3c0be
Merge pull request #28 from Exanite/feature/prettify-rewrite
Exanite File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
There are no files selected for viewing
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file renamed
BIN
+1.88 MB
.silktouch/82fde6eb3b68e085.stout → .silktouch/vulkan-clangsharp.stout
Binary file not shown.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -2,6 +2,8 @@ | |
| @../remap.rsp | ||
| --exclude | ||
| _GUID | ||
| AL_CPLUSPLUS | ||
| ALC_CPLUSPLUS | ||
| --file | ||
| openal-soft-al.h | ||
| --methodClassName | ||
|
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,2 +1,3 @@ | ||
| @../../remap-stdint.rsp | ||
| --remap | ||
| _GUID=System.Guid |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,4 @@ | ||
| @../../remap-stdint.rsp | ||
| --remap | ||
| SDL_fabsf=float.Abs | ||
| VkSurfaceKHR=ulong | ||
|
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1 +1 @@ | ||
| @../remap-stdint.rsp | ||
| @../../remap-stdint.rsp |
Submodule openal-soft
updated
148 files
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.