Iris's decision: it lives in this repository for now, included by path, with its history left in the iris/iris repository on the gitea remote (this is its main at 7b54aaf, byte-identical to the public GitHub copy). It gets its own repository back once it has proved itself here. RUST.md's I0 records the decision and what the first build said: the tree does not compile on the current nightly because const_trait_impl now requires traits to be declared 'const trait', which is the first item of I0b. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
19 lines
487 B
Rust
19 lines
487 B
Rust
use crate::{HasEvents, WeakWidget, Widget};
|
|
|
|
pub struct EventCtx<'a, Rsc: HasEvents, Data> {
|
|
pub state: &'a mut Rsc::State,
|
|
pub data: Data,
|
|
}
|
|
|
|
pub struct EventIdCtx<'a, Rsc: HasEvents, Data, W: ?Sized> {
|
|
pub widget: WeakWidget<W>,
|
|
pub state: &'a mut Rsc::State,
|
|
pub data: Data,
|
|
}
|
|
|
|
impl<Rsc: HasEvents, Data, W: Widget> EventIdCtx<'_, Rsc, Data, W> {
|
|
pub fn widget<'a>(&self, rsc: &'a mut Rsc) -> &'a mut W {
|
|
&mut rsc.ui_mut().widgets[self.widget]
|
|
}
|
|
}
|