This is an example of documentation generated by ZigDoc, an alternative to Zig's built-in Auto Doc feature. See also examples in other modes/formats. The project being documented here (as the example) is the Zig library itself.
NtQueryValueKey
ntdll.NtQueryValueKey
pubextern"ntdll"fnNtQueryValueKey(
KeyHandle: HANDLE,
ValueName: *constUNICODE_STRING,
KeyValueInformationClass: KEY.VALUE.INFORMATION_CLASS,
KeyValueInformation: *anyopaque,
/// Length of KeyValueInformation buffer in bytesLength: ULONG,
/// On STATUS_SUCCESS, contains the length of the populated portion of the/// provided buffer. On STATUS_BUFFER_OVERFLOW or STATUS_BUFFER_TOO_SMALL,/// contains the minimum `Length` value that would be required to hold the information.ResultLength: *ULONG,
) callconv(.winapi) NTSTATUS
pubextern"ntdll"fnNtQueryValueKey(
KeyHandle: HANDLE,
ValueName: *constUNICODE_STRING,
KeyValueInformationClass: KEY.VALUE.INFORMATION_CLASS,
KeyValueInformation: *anyopaque,
/// Length of KeyValueInformation buffer in bytesLength: ULONG,
/// On STATUS_SUCCESS, contains the length of the populated portion of the/// provided buffer. On STATUS_BUFFER_OVERFLOW or STATUS_BUFFER_TOO_SMALL,/// contains the minimum `Length` value that would be required to hold the information.ResultLength: *ULONG,
) callconv(.winapi) NTSTATUS