Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
82 commits
Select commit Hold shift + click to select a range
3ac76f2
Update OpenAL name overrides to match the 2 character acronym thresho…
Exanite Mar 24, 2026
634e736
Start of feature/nested-struct-name-affixes branch
Exanite Mar 24, 2026
35f0f59
Cleanup leftover return statement
Exanite Mar 25, 2026
cd2ccfd
Split TransformHandles into two mods
Exanite Mar 25, 2026
4b119b2
Rename UseDSL to UseDsl
Exanite Mar 25, 2026
f3900b9
Cleanup unused property in TransformHandles
Exanite Mar 25, 2026
851c3ff
Cleanup usages of redundant collections expressions in TransformHandles
Exanite Mar 25, 2026
2f018ff
Add NameAffixer.AddResolvedNameAffix() for handling compound names
Exanite Mar 27, 2026
50a4115
Use AddResolvedNameAffix for extracted function pointer delegate types
Exanite Mar 27, 2026
8388878
Use AddResolvedNameAffix for extracted nested structs and remove name…
Exanite Mar 27, 2026
674c61a
Rename resolved affix to referenced affix and add parsing code for re…
Exanite Mar 27, 2026
d2ae93d
Add extra ConsecutiveNumbers test case documenting that Xs between nu…
Exanite Mar 27, 2026
d51a68e
Fix incorrect declarationOrder implementation
Exanite Mar 27, 2026
a30ac45
Change Prettify to not prefix identifiers starting with numbers
Exanite Mar 28, 2026
fb98f40
Change the list and order of INameTrimmers used to be statically conf…
Exanite Jan 15, 2026
68153ff
Replace now outdated comment
Exanite Mar 28, 2026
e0fb52e
Move PrettifyNamesTrimmer higher up in the class to make it more obvi…
Exanite Mar 28, 2026
044c84b
Remove INameTrimmer.Version
Exanite Mar 28, 2026
e9b2377
Add PrefixIfStartsWithNumberTrimmer
Exanite Mar 28, 2026
464703c
Remove TrimmerBaseline config option
Exanite Mar 28, 2026
adf4eee
Rename INameTrimmer to INameProcessor and update rest of codebase
Exanite Mar 28, 2026
f321238
Simplify name affixer name processor names to be StripAffixesNameProc…
Exanite Mar 28, 2026
d8e808d
Shorten names a bit more for readability
Exanite Mar 28, 2026
6983172
Decide to only support references within the same scope depth
Exanite Mar 28, 2026
14d9d65
Restrict feature set of AddReferencedNameAffix even more for simplicity
Exanite Mar 28, 2026
0228a56
Implement referenced affixes and change how -Delegate types generated…
Exanite Mar 28, 2026
5a4b6cd
Update OpenAL name overrides in generator.json
Exanite Mar 30, 2026
16ba7ea
Update doc comment in ServiceCollectionExtensions to indicate removal…
Exanite Mar 30, 2026
3ced75c
Merge branch 'feature/update-openal-name-overrides' into feature/nest…
Exanite Mar 30, 2026
86e12c4
Update name overrides for OpenAL to match new Delegate type naming co…
Exanite Mar 30, 2026
2ecb6b1
Optimize comparison by hoisting the calculation
Exanite Mar 31, 2026
5788cb7
Add topological sort to ReapplyAffixesProcessor
Exanite Mar 31, 2026
e56b4cf
Improve error handling by checking for case where dependencies are no…
Exanite Mar 31, 2026
85e2461
Edit error message
Exanite Mar 31, 2026
0edec2b
Add test: PrettifyNamesTests.SuccessfullyUsesReferencedAffixes
Exanite Mar 31, 2026
aad7a0b
Use "SDL.gen.cs" for test document name
Exanite Mar 31, 2026
f200deb
Add tests for referenced affix behavior
Exanite Mar 31, 2026
6a791b0
Alphabetically sort the mod names
Exanite Mar 31, 2026
64fb7c6
Add start of IdentifySharedPrefixes mod
Exanite Mar 31, 2026
7e7442d
Work on IdentifySharedPrefixes
Exanite Mar 31, 2026
e416196
Remove ApplyPrettifyOnlyPipeline
Exanite Mar 31, 2026
2763385
Rename BreakIntoWords as SplitIntoWords
Exanite Mar 31, 2026
6160704
Remove the double legacy NameTrimmers
Exanite Mar 31, 2026
07a0d2f
Fix compile errors
Exanite Mar 31, 2026
3ec90a7
Temporary: Disable all mods after PrettifyNames
Exanite Mar 31, 2026
d5d17fe
Add SharedPrefix affix config to Vulkan job
Exanite Mar 31, 2026
7ac5953
Remove unused isContainer param from GetTrimmingName
Exanite Apr 1, 2026
069a4a2
Work on IdentifySharedPrefixes
Exanite Apr 1, 2026
df44424
Replace regex based NameUtils.LenientUnderscore() with NameSplitter.U…
Exanite Apr 1, 2026
0fd7efc
Merge branch 'exp/identify-shared-prefixes-1' into feature/identify-s…
Exanite Apr 1, 2026
e1e6785
Fix compile errors due to changes
Exanite Apr 1, 2026
5a1b95e
Remove NonDeterminant/Transformed attribute handling from PrettifyNames
Exanite Apr 1, 2026
bb05c07
Slightly simplify NameTrimmer
Exanite Apr 1, 2026
b20ed78
Remove NameTrimmer usage from ExtractNestedTyping and slightly optimi…
Exanite Apr 1, 2026
7d9297b
Slightly cleanup NameTrimmer
Exanite Apr 1, 2026
3cfd17a
Annotate the param names for NameTrimmer's GetPrefix call for readabi…
Exanite Apr 1, 2026
ce27490
Implement visitor for IdentifySharedPrefixes
Exanite Apr 2, 2026
4ee05ac
Properly store scopes
Exanite Apr 2, 2026
a6ab813
Handle filtering of non C-prefixed names
Exanite Apr 2, 2026
bab0385
Work on migrating the NameTrimmer code over to IdentifySharedPrefixes
Exanite Apr 2, 2026
6455a62
Cleanup
Exanite Apr 2, 2026
26bd209
Add affix handling to IdentifySharedPrefixes
Exanite Apr 2, 2026
4fc2479
Implement shared prefix identification output to name affixes
Exanite Apr 2, 2026
af0a1df
Fix incorrect Rewriter implementation
Exanite Apr 2, 2026
e7af8dc
Simplify code
Exanite Apr 2, 2026
9da2aaa
Add missing ModConfiguration attribute
Exanite Apr 2, 2026
925269e
Fix incorrect method call
Exanite Apr 2, 2026
4cfaacb
Fix incorrect member name output for identified prefixes
Exanite Apr 2, 2026
64b00db
Fix duplicate key exception caused by functions being able to have du…
Exanite Apr 2, 2026
d93c3b8
Revert "Temporary: Disable all mods after PrettifyNames"
Exanite Apr 2, 2026
4c64485
Update generator config for OpenAL, OpenGL, and SDL to use IdentifySh…
Exanite Apr 3, 2026
a3dcf33
Add another test case as an example of how "2D" is split
Exanite Apr 3, 2026
655ae58
Add another prefix override for SeparableTargetEXT
Exanite Apr 3, 2026
b9383b9
Migrate over most prefix trimming/identification tests from PrettifyN…
Exanite Apr 3, 2026
33ed566
Update PrettifyNamesTests now that prefix identification is done sepa…
Exanite Apr 3, 2026
d4c80c8
Migrate over the NameTrimmerTests
Exanite Apr 4, 2026
f4a3054
Remove IdentifiesSharedPrefix_WhenPrefixesDeclared
Exanite Apr 4, 2026
b78c728
Also remove the snapshot for IdentifiesSharedPrefix_WhenPrefixesDeclared
Exanite Apr 4, 2026
7f84c72
Change INameProcessor to be private to PrettifyNames
Exanite Apr 4, 2026
466d92b
Change nPasses to be a class constant to allow usage of doc comments
Exanite Apr 4, 2026
0986ecc
Rename _forbiddenTrimmings to _forbiddenPrefixes and adjust docs
Exanite Apr 4, 2026
566de49
Change GetPrefix to use a non-null scope parameter for consistency
Exanite Apr 4, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified .silktouch/openal-clangsharp.stout
Binary file not shown.
Binary file modified .silktouch/vulkan-clangsharp.stout
Binary file not shown.
73 changes: 48 additions & 25 deletions generator.json
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,12 @@
"AddIncludes",
"ClangScraper",
"MarkNativeNames",
"ExtractHandles",
"ExtractNestedTyping",
"TransformHandles",
"TransformFunctions",
"TransformProperties",
"IdentifySharedPrefixes",
"PrettifyNames",
"TransformEnums",
"AddVTables",
Expand All @@ -59,17 +61,23 @@
"InputTestRoot": "tests/SDL"
},
"TransformHandles": {
"AssumeMissingTypesOpaque": true,
"UseDSL": true
"UseDsl": true
},
"TransformFunctions": {
"BoolTypes": {
"SDL_bool": null
}
},
"PrettifyNames": {
"IdentifySharedPrefixes": {
"GlobalPrefixHints": ["SDL"]
},
"PrettifyNames": {
"Affixes": {
"SharedPrefix": {
"Remove": true
}
}
},
"TransformEnums": {
"AddNoneMemberToFlags": true,
"RewriteMemberValues": true
Expand All @@ -95,6 +103,7 @@
"MixKhronosData",
"AddOpaqueStructs",
"TransformFunctions",
"IdentifySharedPrefixes",
"PrettifyNames",
"TransformEnums",
"AddVTables",
Expand Down Expand Up @@ -171,14 +180,17 @@
}
]
},
"PrettifyNames": {
"IdentifySharedPrefixes": {
"GlobalPrefixHints": ["gl"],
"PrefixOverrides": {
"SyncObjectMask": "GL_SYNC",
"OcclusionQueryParameterNameNV": "GL",
"TexStorageAttribs": "GL",
"ContainerType": "GL"
},
"ContainerType": "GL",
"SeparableTargetEXT": "GL"
}
},
"PrettifyNames": {
"Affixes": {
"HandleType": {
"Order": 1
Expand All @@ -197,6 +209,9 @@
},
"KhronosNonExclusiveVendor": {
"Remove": true
},
"SharedPrefix": {
"Remove": true
}
}
},
Expand Down Expand Up @@ -228,10 +243,12 @@
"ChangeNativeClass",
"AddApiProfiles",
"MixKhronosData",
"ExtractHandles",
"ExtractNestedTyping",
"TransformHandles",
"InterceptNativeFunctions",
"TransformFunctions",
"IdentifySharedPrefixes",
"PrettifyNames",
"TransformEnums",
"AddVTables",
Expand Down Expand Up @@ -294,29 +311,27 @@
}
]
},
"IdentifySharedPrefixes": {
"GlobalPrefixHints": ["alc", "al"]
},
"PrettifyNames": {
"GlobalPrefixHints": ["alc", "al"],
"NameOverrides": {
"ALContext": "ALContext",
"EFXEAXREVERBPROPERTIES": "EfxEaxReverbProperties",
"EFXEAXREVERBPROPERTIES_flReflectionsPan": "EfxEaxReverbPropertiesFlReflectionsPan",
"EFXEAXREVERBPROPERTIES_flLateReverbPan": "EfxEaxReverbPropertiesFlLateReverbPan",
"EFXEAXREVERBPROPERTIESflReflectionsPan": "EfxEaxReverbPropertiesFlReflectionsPan",
"EFXEAXREVERBPROPERTIESflLateReverbPan": "EfxEaxReverbPropertiesFlLateReverbPan",
"ALCcontextHandle": "ContextHandle",
"ALCdeviceHandle": "DeviceHandle",
"ALBUFFERCALLBACKTYPESOFT": "BufferCallbackSOFT",
"ALBUFFERCALLBACKTYPESOFTDelegate": "BufferCallbackDelegateSOFT",
"ALBUFFERCALLBACKTYPESOFTDelegate": "BufferCallbackSOFTDelegate",
"ALCEVENTPROCTYPESOFT": "ContextEventProcSOFT",
"ALCEVENTPROCTYPESOFTDelegate": "ContextEventProcDelegateSOFT",
"ALCEVENTPROCTYPESOFTDelegate": "ContextEventProcSOFTDelegate",
"ALEVENTPROCSOFT": "EventProcSOFT",
"ALEVENTPROCSOFTDelegate": "EventProcDelegateSOFT",
"ALEVENTPROCSOFTDelegate": "EventProcSOFTDelegate",
"ALDEBUGPROCEXT": "DebugProcEXT",
"ALDEBUGPROCEXTDelegate": "DebugProcDelegateEXT",
"ALDEBUGPROCEXTDelegate": "DebugProcEXTDelegate",
"LPALFOLDBACKCALLBACK": "FoldbackCallback",
"LPALFOLDBACKCALLBACKDelegate": "FoldbackCallbackDelegate",
"EAXSetDirect": "EAXSetDirect",
"EAXGetDirect": "EAXGetDirect",
"EAXGetBufferModeDirect": "EAXGetBufferModeDirect",
"EAXSetBufferModeDirect": "EAXSetBufferModeDirect"
"LPALFOLDBACKCALLBACKDelegate": "FoldbackCallbackDelegate"
},
"Affixes": {
"HandleType": {
Expand All @@ -336,6 +351,9 @@
},
"KhronosNonExclusiveVendor": {
"Remove": true
},
"SharedPrefix": {
"Remove": true
}
}
},
Expand All @@ -351,8 +369,7 @@
"BenefitOfTheDoubtArrayTransformation": true
},
"TransformHandles": {
"AssumeMissingTypesOpaque": true,
"UseDSL": true
"UseDsl": true
},
"StripAttributes": {
"Remove": [
Expand All @@ -370,13 +387,15 @@
"AddIncludes",
"ClangScraper",
"MarkNativeNames",
"ExtractHandles",
"ExtractNestedTyping",
"TransformHandles",
"MixKhronosData",
"AddApiProfiles",
"InterceptNativeFunctions",
"TransformFunctions",
"TransformProperties",
"IdentifySharedPrefixes",
"PrettifyNames",
"TransformEnums",
"AddVTables",
Expand Down Expand Up @@ -423,15 +442,16 @@
}
},
"TransformHandles": {
"AssumeMissingTypesOpaque": true,
"UseDSL": true
"UseDsl": true
},
"PrettifyNames": {
"GlobalPrefixHints": ["PFN_vk","vk"],
"IdentifySharedPrefixes": {
"GlobalPrefixHints": ["PFN_vk", "vk"],
"PrefixOverrides": {
"VkPipelineCreateFlags2": "VK_PIPELINE_CREATE_2",
"VkMemoryDecompressionMethodFlagsEXT": "VK_MEMORY_DECOMPRESSION_METHOD"
},
}
},
"PrettifyNames": {
"NameOverrides": {
"numAABBs": "NumAabbs"
},
Expand All @@ -450,6 +470,9 @@
},
"KhronosHandleType": {
"Remove": true
},
"SharedPrefix": {
"Remove": true
}
}
},
Expand Down
Loading