W3cubDocs

/Web APIs

GPUCompilationMessage: linePos property

Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

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

js

  // ...
  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

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
linePos
113Currently supported on ChromeOS, macOS, and Windows only.
113Currently supported on ChromeOS, macOS, and Windows only.
previewCurrently supported on Linux and Windows only.
No
99Currently supported on ChromeOS, macOS, and Windows only.
No No No No No No No

See also

© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/GPUCompilationMessage/linePos