src/main.rs
struct ComponentDescriptor;
struct ErasedMutPointer;
pub trait TDescriptors {
const SIZE: usize;
}
pub trait TPointers {
const SIZE: usize;
}
impl<const N: usize> TDescriptors for [ComponentDescriptor; N] {
const SIZE: usize = N;
}
impl<const N: usize> TPointers for [ErasedMutPointer; N] {
const SIZE: usize = N;
}
pub trait QueryBundle {
type Descriptors: TDescriptors;
type Pointers: TPointers;
const DESCRIPTORS: Self::Descriptors;
fn build(pointers: Self::Pointers) -> Self;
}
fn main() {}