mirror of
https://github.com/zed-industries/zed.git
synced 2025-01-18 08:02:27 +00:00
ec0cff0e1a
This PR adds a `map` method to the `Component` trait. `map` is a fully-generalized form of `when`, as `when` can be expressed in terms of `map`: ```rs div().map(|this| if condition { then(this) } else { this }) ``` This allows us to take advantage of Rust's pattern matching when building up conditions: ```rs // Before div() .when(self.current_side == PanelSide::Left, |this| this.border_r()) .when(self.current_side == PanelSide::Right, |this| { this.border_l() }) .when(self.current_side == PanelSide::Bottom, |this| { this.border_b().w_full().h(current_size) }) // After div() .map(|this| match self.current_side { PanelSide::Left => this.border_r(), PanelSide::Right => this.border_l(), PanelSide::Bottom => this.border_b().w_full().h(current_size), }) ``` Release Notes: - N/A |
||
---|---|---|
.. | ||
src | ||
build.rs | ||
Cargo.toml |