update signatures of layout modifiers

This commit is contained in:
facile pop culture reference 2026-08-23 06:17:54 +03:00
parent e69d4287e0
commit 41ef62146b
6 changed files with 18 additions and 18 deletions

View file

@ -138,7 +138,7 @@ where
+ Namespace<O::Unit>
+ Namespace<Option<O::Unit>>
{
let thunk = draw(move|screen|ok_flat(expr.nth(1)?.map(|x: &'a str|state.interpret(screen, x))));
let thunk = draw(move|screen|ok_flat(expr.nth(1)?.map(|x|state.interpret(screen, x))));
Ok(match expr.head()? {
Some("full/x") | Some("full/w") => Full::W(thunk).draw(to)?,
Some("full/y") | Some("full/h") => Full::H(thunk).draw(to)?,
@ -157,7 +157,7 @@ where
+ Namespace<O::Unit>
+ Namespace<Option<O::Unit>>
{
let thunk = draw(move|screen|ok_flat(expr.last()?.map(|x: &'a str|state.interpret(screen, x))));
let thunk = draw(move|screen|ok_flat(expr.last()?.map(|x|state.interpret(screen, x))));
Ok(match expr.head()? {
Some("exact/w") => thunk.exact_w(
state.namespace(&expr.nth(1)?)?
@ -183,7 +183,7 @@ where
+ Namespace<O::Unit>
+ Namespace<Option<O::Unit>>
{
let thunk = draw(move|screen|ok_flat(expr.last()?.map(|x: &'a str|state.interpret(screen, x))));
let thunk = draw(move|screen|ok_flat(expr.last()?.map(|x|state.interpret(screen, x))));
Ok(match expr.head()? {
Some("min/w") => thunk.min_w(
state.namespace(&expr.nth(1)?)?
@ -209,7 +209,7 @@ where
+ Namespace<O::Unit>
+ Namespace<Option<O::Unit>>
{
let thunk = draw(move|screen|ok_flat(expr.last()?.map(|x: &'a str|state.interpret(screen, x))));
let thunk = draw(move|screen|ok_flat(expr.last()?.map(|x|state.interpret(screen, x))));
Ok(match expr.head()? {
Some("max/w") => thunk.max_w(
state.namespace(&expr.nth(1)?)?
@ -235,7 +235,7 @@ where
+ Namespace<O::Unit>
+ Namespace<Option<O::Unit>>
{
let thunk = draw(move|screen|ok_flat(expr.last()?.map(|x: &'a str|state.interpret(screen, x))));
let thunk = draw(move|screen|ok_flat(expr.last()?.map(|x|state.interpret(screen, x))));
Ok(match expr.head()? {
Some("push/w") => thunk.push_x(state.namespace(&expr.nth(1)?)?).draw(to)?,
Some("push/h") => thunk.push_y(state.namespace(&expr.nth(1)?)?).draw(to)?,
@ -257,7 +257,7 @@ where
+ Namespace<O::Unit>
+ Namespace<Option<O::Unit>>
{
let thunk = draw(move|screen|ok_flat(expr.last()?.map(|x: &'a str|state.interpret(screen, x))));
let thunk = draw(move|screen|ok_flat(expr.last()?.map(|x|state.interpret(screen, x))));
Ok(match expr.head()? {
Some("pull/w") => thunk.pull_x(state.namespace(&expr.nth(1)?)?).draw(to)?,
Some("pull/h") => thunk.pull_y(state.namespace(&expr.nth(1)?)?).draw(to)?,
@ -279,7 +279,7 @@ where
+ Namespace<O::Unit>
+ Namespace<Option<O::Unit>>
{
let thunk = draw(move|screen|ok_flat(expr.last()?.map(|x: &'a str|state.interpret(screen, x))));
let thunk = draw(move|screen|ok_flat(expr.last()?.map(|x|state.interpret(screen, x))));
Ok(match expr.head()? {
Some("pad/w") => thunk.pad_w(
state.namespace(&expr.nth(1)?)?

View file

@ -45,7 +45,7 @@ where
+ Namespace<O::Unit>
+ Namespace<Option<O::Unit>>
{
let thunk = draw(move|screen|ok_flat(expr.nth(1)?.map(|x: &'a str|state.interpret(screen, x))));
let thunk = draw(move|screen|ok_flat(expr.nth(1)?.map(|x|state.interpret(screen, x))));
Ok(match expr.head()? {
Some("align/c") => Align(Some(Azimuth::C), thunk).draw(to)?,
Some("align/x") => Align(Some(Azimuth::X), thunk).draw(to)?,
@ -157,8 +157,8 @@ fn align <S: Screen> (
}
fn_kw_layout!(kw_split |state, output, expr| {
let thunk_a = draw(move|screen|ok_flat(expr.nth(1)?.map(|x: &'a str|state.interpret(screen, x))));
let thunk_b = draw(move|screen|ok_flat(expr.nth(2)?.map(|x: &'a str|state.interpret(screen, x))));
let thunk_a = draw(move|screen|ok_flat(expr.nth(1)?.map(|x|state.interpret(screen, x))));
let thunk_b = draw(move|screen|ok_flat(expr.nth(2)?.map(|x|state.interpret(screen, x))));
Ok(match expr.head()? {
Some("bsp/n") => Split::North.stack(thunk_a, thunk_b).draw(output)?,
Some("bsp/s") => Split::South.stack(thunk_a, thunk_b).draw(output)?,

View file

@ -1,9 +1,9 @@
use crate::*;
fn_kw_layout!(kw_when |state, output, expr| {
let thunk = draw(move|screen|ok_flat(expr.nth(2)?.map(|x: &'a str|state.interpret(screen, x))));
let thunk = draw(move|screen|ok_flat(expr.nth(2)?.map(|x|state.interpret(screen, x))));
ok_flat(matches!(expr.head()?, Some("when")).then(||{
when(state.namespace(&expr.nth(1)?)?.unwrap(), thunk) .draw(output)
when(state.namespace(&expr.nth(1)?)?.unwrap(), thunk).draw(output)
}))
});
@ -19,8 +19,8 @@ pub const fn when <'a, T: Screen> (condition: bool, item: impl Draw<'a, T>) -> i
}
fn_kw_layout!(kw_either |state, output, expr| {
let thunk_a = draw(move|screen|ok_flat(expr.nth(2)?.map(|x: &'a str|state.interpret(screen, x))));
let thunk_b = draw(move|screen|ok_flat(expr.nth(3)?.map(|x: &'a str|state.interpret(screen, x))));
let thunk_a = draw(move|screen|ok_flat(expr.nth(2)?.map(|x|state.interpret(screen, x))));
let thunk_b = draw(move|screen|ok_flat(expr.nth(3)?.map(|x|state.interpret(screen, x))));
ok_flat(matches!(expr.head()?, Some("either")).then(||{
either(state.namespace(&expr.nth(1)?)?.unwrap(), thunk_a, thunk_b).draw(output)
}))