Updated shaders and removed debug_stub_derive dependency
MODIFY
wgpu/Cargo.toml
wgpu/Cargo.toml
@@ -22,7 +22,6 @@ glam = "0.8"
font-kit = "0.4"
log = "0.4"
guillotiere = "0.4"
-debug_stub_derive = "0.3"
[dependencies.image]
version = "0.22"

MODIFY
wgpu/src/image.rs
wgpu/src/image.rs
@@ -15,7 +15,6 @@ use std::mem;
use std::cell::RefCell;
use guillotiere::{Allocation, AtlasAllocator, Size};
-use debug_stub_derive::*;
#[derive(Debug)]
pub struct Pipeline {
@@ -477,11 +476,9 @@ impl ImageAllocation {
}
}
-#[derive(DebugStub)]
pub enum ArrayAllocation {
AtlasAllocation {
layer: usize,
- #[debug_stub = "Allocation"]
allocation: Allocation,
},
WholeLayer {
@@ -518,16 +515,35 @@ impl ArrayAllocation {
}
}
-#[derive(DebugStub)]
+impl std::fmt::Debug for ArrayAllocation {
+ fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+ match self {
+ ArrayAllocation::AtlasAllocation { layer, .. } => {
+ write!(f, "ArrayAllocation::AtlasAllocation {{ layer: {} }}", layer)
+ },
+ ArrayAllocation::WholeLayer { layer } => {
+ write!(f, "ArrayAllocation::WholeLayer {{ layer: {} }}", layer)
+ }
+ }
+ }
+}
+
pub enum TextureLayer {
Whole,
- Atlas(
- #[debug_stub="AtlasAllocator"]
- AtlasAllocator
- ),
+ Atlas(AtlasAllocator),
Empty,
}
+impl std::fmt::Debug for TextureLayer {
+ fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+ match self {
+ TextureLayer::Whole => write!(f, "TextureLayer::Whole"),
+ TextureLayer::Atlas(_) => write!(f, "TextureLayer::Atlas"),
+ TextureLayer::Empty => write!(f, "TextureLayer::Empty"),
+ }
+ }
+}
+
#[derive(Debug)]
pub struct TextureArray {
texture: wgpu::Texture,

MODIFY
wgpu/src/image/raster.rs
wgpu/src/image/raster.rs
@@ -3,9 +3,7 @@ use iced_native::image;
use std::{
collections::{HashMap, HashSet},
};
-use debug_stub_derive::*;
-#[derive(DebugStub)]
pub enum Memory {
Host(::image::ImageBuffer<::image::Bgra<u8>, Vec<u8>>),
Device(ImageAllocation),
@@ -24,6 +22,17 @@ impl Memory {
}
}
+impl std::fmt::Debug for Memory {
+ fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+ match self {
+ Memory::Host(_) => write!(f, "Memory::Host"),
+ Memory::Device(_) => write!(f, "Memory::Device"),
+ Memory::NotFound => write!(f, "Memory::NotFound"),
+ Memory::Invalid => write!(f, "Memory::Invalid"),
+ }
+ }
+}
+
#[derive(Debug)]
pub struct Cache {
map: HashMap<u64, Memory>,

MODIFY
wgpu/src/image/vector.rs
wgpu/src/image/vector.rs
@@ -3,14 +3,9 @@ use iced_native::svg;
use std::{
collections::{HashMap, HashSet},
};
-use debug_stub_derive::*;
-#[derive(DebugStub)]
pub enum Svg {
- Loaded(
- #[debug_stub="ReplacementValue"]
- resvg::usvg::Tree
- ),
+ Loaded(resvg::usvg::Tree),
NotFound,
}
@@ -27,10 +22,17 @@ impl Svg {
}
}
-#[derive(DebugStub)]
+impl std::fmt::Debug for Svg {
+ fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+ match self {
+ Svg::Loaded(_) => write!(f, "Svg::Loaded"),
+ Svg::NotFound => write!(f, "Svg::NotFound"),
+ }
+ }
+}
+
pub struct Cache {
svgs: HashMap<u64, Svg>,
- #[debug_stub="ReplacementValue"]
rasterized: HashMap<(u64, u32, u32), ImageAllocation>,
svg_hits: HashSet<u64>,
rasterized_hits: HashSet<(u64, u32, u32)>,
@@ -144,3 +146,9 @@ impl Cache {
self.rasterized_hits.clear();
}
}
+
+impl std::fmt::Debug for Cache {
+ fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+ write!(f, "vector::Cache")
+ }
+}
\ No newline at end of file

MODIFY
wgpu/src/shader/image.frag.spv
wgpu/src/shader/image.frag.spv
Binary files a/wgpu/src/shader/image.frag.spv and b/wgpu/src/shader/image.frag.spv differ

MODIFY
wgpu/src/shader/image.vert.spv
wgpu/src/shader/image.vert.spv
Binary files a/wgpu/src/shader/image.vert.spv and b/wgpu/src/shader/image.vert.spv differ

Updated shaders and removed debug_stub_derive dependency