GPUCompilationMessage:linePos 属性

可用性有限

此特性不是基线特性,因为它在一些最广泛使用的浏览器中不起作用。

安全上下文: 此功能仅在安全上下文(HTTPS)中可用,且支持此功能的浏览器数量有限。

注意:此功能在 Web Workers 中可用。

GPUCompilationMessage 接口的 **linePos** 只读属性是一个数字,表示消息对应的代码行中的位置。这可以是一个精确的点,也可以是相关子字符串的开头。

一个数字。

准确地说,linePos 是从行首到消息对应的精确点或相关子字符串开头的 UTF-16 代码单元的数量。

请注意:

  • 如果消息对应一个子字符串,linePos 指的是该子字符串的第一个 UTF-16 代码单元。
  • 如果消息不对应于特定的代码位置(例如,它指的是整个着色器代码),linePos 将为 0。
  • 值是从 1 开始计算的——值为 1 表示该行的第一个代码单元。

示例

js
const shaderModule = device.createShaderModule({
  code: shaders,
});

const shaderInfo = await shaderModule.getCompilationInfo();
const firstMessage = shaderInfo.messages[0];
console.log(firstMessage.linePos);

有关更详细的示例,请参阅主要的 GPUCompilationInfo 页面

规范

规范
WebGPU
# dom-gpucompilationmessage-linepos

浏览器兼容性

另见