Skip to content

Commit c8088a7

Browse files
committed
Remove lenses module from derived lenses
Allows lenses to be derived for multiple structs in a single module without generating illegal duplicate module definitions.
1 parent 8dd855a commit c8088a7

File tree

6 files changed

+13
-19
lines changed

6 files changed

+13
-19
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -202,7 +202,7 @@ To use the lens, wrap your widget with `LensWrap` (note the conversion of
202202
CamelCase to snake_case):
203203

204204
```rust
205-
LensWrap::new(WidgetThatExpectsf64::new(), lenses::app_state::value);
205+
LensWrap::new(WidgetThatExpectsf64::new(), app_state::value);
206206
```
207207

208208
## Using druid

druid-derive/src/lens.rs

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -87,15 +87,12 @@ fn derive_struct(input: &syn::DeriveInput) -> Result<proc_macro2::TokenStream, s
8787
});
8888

8989
let expanded = quote! {
90-
pub mod lenses {
91-
pub mod #twizzled_name {
92-
use super::super::*;
93-
94-
use druid::Lens;
95-
#(#structs)*
96-
#(#impls)*
97-
}
90+
pub mod #twizzled_name {
91+
use super::*;
9892

93+
use druid::Lens;
94+
#(#structs)*
95+
#(#impls)*
9996
}
10097
};
10198

druid/examples/calc.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,7 @@ fn build_calc() -> impl Widget<CalcState> {
152152
let mut column = Flex::column();
153153
let display = LensWrap::new(
154154
DynLabel::new(|data: &String, _env| data.clone()),
155-
lenses::calc_state::value,
155+
calc_state::value,
156156
);
157157
column.add_child(pad(display), 0.0);
158158
column.add_child(

druid/examples/either.rs

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,15 +35,12 @@ fn ui_builder() -> impl Widget<AppState> {
3535

3636
let mut col = Flex::column();
3737
col.add_child(
38-
Padding::new(
39-
5.0,
40-
LensWrap::new(Checkbox::new(), lenses::app_state::which),
41-
),
38+
Padding::new(5.0, LensWrap::new(Checkbox::new(), app_state::which)),
4239
0.0,
4340
);
4441
let either = Either::new(
4542
|data, _env| data.which,
46-
Padding::new(5.0, LensWrap::new(Slider::new(), lenses::app_state::value)),
43+
Padding::new(5.0, LensWrap::new(Slider::new(), app_state::value)),
4744
Padding::new(5.0, label),
4845
);
4946
col.add_child(either, 0.0);

druid/examples/slider.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,13 @@ fn build_widget() -> impl Widget<DemoState> {
3131
}
3232
});
3333
let mut row = Flex::row();
34-
let checkbox = LensWrap::new(Checkbox::new(), lenses::demo_state::double);
34+
let checkbox = LensWrap::new(Checkbox::new(), demo_state::double);
3535
let checkbox_label = Label::new("double the value");
3636
row.add_child(checkbox, 0.0);
3737
row.add_child(Padding::new(5.0, checkbox_label), 1.0);
3838

39-
let bar = LensWrap::new(ProgressBar::new(), lenses::demo_state::value);
40-
let slider = LensWrap::new(Slider::new(), lenses::demo_state::value);
39+
let bar = LensWrap::new(ProgressBar::new(), demo_state::value);
40+
let slider = LensWrap::new(Slider::new(), demo_state::value);
4141

4242
let button_1 = Button::sized(
4343
"increment ",

druid/examples/switch.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ struct DemoState {
2323
fn build_widget() -> impl Widget<DemoState> {
2424
let mut col = Flex::column();
2525
let mut row = Flex::row();
26-
let switch = LensWrap::new(Switch::new(), lenses::demo_state::value);
26+
let switch = LensWrap::new(Switch::new(), demo_state::value);
2727
let switch_label = Label::new("Setting label");
2828

2929
row.add_child(Padding::new(5.0, switch_label), 0.0);

0 commit comments

Comments
 (0)