GlDebugFns

Enum GlDebugFns 

Source
pub enum GlDebugFns {
    Auto,
    ForceEnabled,
    Disabled,
}
Expand description

Controls whether OpenGL debug functions are enabled.

Debug functions include glPushDebugGroup, glPopDebugGroup, glObjectLabel, etc. These are useful for debugging but can cause crashes on some buggy drivers.

Variants§

§

Auto

Automatically decide whether to enable debug functions.

Debug functions will be enabled if supported by the driver, unless running on a device known to have buggy debug function implementations (e.g., Mali GPUs which can crash in glPushDebugGroup).

This is the default behavior.

§

ForceEnabled

Force enable debug functions if supported by the driver.

This ignores any device-specific workarounds and enables debug functions on all devices that support them, including those with known bugs.

§

Disabled

Disable debug functions entirely.

Debug functions will not be used even if supported by the driver.

Implementations§

Source§

impl GlDebugFns

Source

pub fn from_env() -> Option<Self>

Choose debug functions setting from the environment variable WGPU_GL_DEBUG_FNS.

Possible values (case insensitive):

  • auto - automatically decide based on device
  • forceenabled, force_enabled, or enabled - force enable
  • disabled - disable entirely

Use with unwrap_or_default() to get the default value if the environment variable is not set.

Source

pub fn with_env(self) -> Self

Takes the given setting, modifies it based on the WGPU_GL_DEBUG_FNS environment variable, and returns the result.

See from_env for more information.

Trait Implementations§

Source§

impl Clone for GlDebugFns

Source§

fn clone(&self) -> GlDebugFns

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for GlDebugFns

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for GlDebugFns

Source§

fn default() -> GlDebugFns

Returns the “default value” for a type. Read more
Source§

impl PartialEq for GlDebugFns

Source§

fn eq(&self, other: &GlDebugFns) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for GlDebugFns

Source§

impl Eq for GlDebugFns

Source§

impl StructuralPartialEq for GlDebugFns

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.