GPUCompilationMessage: linePos property
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Note: This feature is available in Web Workers.
The linePos
read-only property of the
GPUCompilationMessage
interface is a number representing the position in the code line that the message corresponds to. This could be an exact point, or the start of the relevant substring.
Value
A number.
To be precise, linePos
is the number of UTF-16 code units from the beginning of the line to the exact point or start of the relevant substring that the message corresponds to.
Note that:
- If the message corresponds to a substring,
linePos
refers to the first UTF-16 code unit of the substring. - If the message does not correspond to a specific code position (perhaps it refers to the whole of the shader code),
linePos
will be 0. - Values are one-based — a value of 1 refers to the first code unit of the line.
Examples
// ...
const shaderModule = device.createShaderModule({
code: shaders,
});
const shaderInfo = await shaderModule.getCompilationInfo();
const firstMessage = shaderInfo.messages[0];
console.log(firstMessage.linePos);
// ...
}
See the main GPUCompilationInfo
page for a more detailed example.
Specifications
Specification |
---|
WebGPU # dom-gpucompilationmessage-linepos |
Browser compatibility
BCD tables only load in the browser
See also
- The WebGPU API