Firefox Tomorrow

web api instance method

GPUDevice: pushErrorScope() method

View on MDN ↗

Secure contextAvailable in workers

The pushErrorScope() method of the GPUDevice interface pushes a new GPU error scope onto the device’s error scope stack, allowing you to capture errors of a particular type.

Once you are done capturing errors, you can end capture by invoking popErrorScope(). This pops the scope from the stack and returns a Promise that resolves to an object describing the first error captured in the scope, or null if no errors were captured.

Syntax

pushErrorScope(filter)

Parameters

  • filter
    • : An enumerated value that specifies what type of error will be caught in this particular error scope. Possible values are:

Return value

None (undefined).

Examples

The following example uses an error scope to capture a suspected validation error, logging it to the console.

device.pushErrorScope("validation");

let sampler = device.createSampler({
  maxAnisotropy: 0, // Invalid, maxAnisotropy must be at least 1.
});

device.popErrorScope().then((error) => {
  if (error) {
    sampler = null;
    console.error(`An error occurred while creating sampler: ${error.message}`);
  }
});

See WebGPU Error Handling best practices for a lot more examples and information.

Specifications

SpecificationsStandards references are available on the canonical MDN page.

Browser compatibility

Browser compatibilityCompatibility data is available on the canonical MDN page.

See also