Skip to content

Commit 7707f64

Browse files
committed
Finish writing the name affix docs for MixKhronosData
1 parent 40727fc commit 7707f64

1 file changed

Lines changed: 12 additions & 1 deletion

File tree

docs/for-contributors/Generator/generator-mods.md

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -460,7 +460,18 @@ Name affix categories:
460460
ported from the now removed `NameTrimmer`-based implementation and is kept for simplicity and consistency with the old
461461
implementation.
462462

463-
- `KhronosVendor` - TODO
463+
- `KhronosNonVendor` - This is a suffix added to any identifier that is identified to contain a suffix listed in the
464+
`NonVendorSuffixes` array of the `MixKhronosData` configuration. This is used in cases when a suffix might block the
465+
identification of other suffixes. For example, OpenAL has names such as `alAuxiliaryEffectSlotfDirect` where the
466+
`Direct` suffix is after the `KhronosFunctionDataType` suffix, thus blocking the `KhronosFunctionDataType` suffix
467+
from being identified. In this case, adding `Direct` as a non-vendor suffix fixes the issue. Because this is a
468+
"helper" affix, Silk's bindings leave this affix category unconfigured in the `PrettifyNames` configuration.
469+
470+
- `KhronosVendor` - This is a suffix added to any identifier that is identified to contain a Khronos vendor suffix such
471+
as `KHR`, `EXT`, or `NV`. The list of vendor suffixes used during identification is retrieved from the provided XML
472+
specification. Silk's bindings are configured to move `KhronosVendor` suffixes to the end of the name. This is to
473+
match Khronos's own naming convention. This primarily affects cases where Silk's generator added additional suffixes
474+
to the end of the name, such as for handle types like `DebugUtilsMessengerHandleEXT` in Vulkan.
464475

465476
Usage recommendations:
466477

0 commit comments

Comments
 (0)