use crate::raster_types::{CPU, RasterDataTable}; use crate::{Color, Ctx}; /// Meant for debugging purposes, not general use. Returns the size of the input type in bytes. #[node_macro::node(category("Debug"))] fn size_of(_: impl Ctx, ty: crate::Type) -> Option { ty.size() } /// Meant for debugging purposes, not general use. Wraps the input value in the Some variant of an Option. #[node_macro::node(category("Debug"))] fn some(_: impl Ctx, #[implementations(f64, f32, u32, u64, String, Color)] input: T) -> Option { Some(input) } /// Meant for debugging purposes, not general use. Unwraps the input value from an Option, returning the default value if the input is None. #[node_macro::node(category("Debug"))] fn unwrap(_: impl Ctx, #[implementations(Option, Option, Option, Option, Option, Option)] input: Option) -> T { input.unwrap_or_default() } /// Meant for debugging purposes, not general use. Clones the input value. #[node_macro::node(category("Debug"))] fn clone<'i, T: Clone + 'i>(_: impl Ctx, #[implementations(&RasterDataTable)] value: &'i T) -> T { value.clone() }