Function
selectNicer
(
fits: Layout.Layout.FittingPredicate<A>,
lineIndent: number,
currentColumn: number,
left: Effect.Effect<DocStream.DocStream<A>>,
right: Effect.Effect<DocStream.DocStream<A>>
)
Source from the content-addressed store, hash-verified
| 135 | } |
| 136 | |
| 137 | const selectNicer = <A>( |
| 138 | fits: Layout.Layout.FittingPredicate<A>, |
| 139 | lineIndent: number, |
| 140 | currentColumn: number, |
| 141 | left: Effect.Effect<DocStream.DocStream<A>>, |
| 142 | right: Effect.Effect<DocStream.DocStream<A>> |
| 143 | ): DocStream.DocStream<A> => { |
| 144 | const leftStream = Effect.runSync(left) |
| 145 | let rightStream: DocStream.DocStream<A> | undefined = undefined |
| 146 | return fits( |
| 147 | leftStream, |
| 148 | lineIndent, |
| 149 | currentColumn, |
| 150 | () => rightStream ?? (rightStream = Effect.runSync(right), rightStream) |
| 151 | ) ? |
| 152 | leftStream : |
| 153 | rightStream ?? Effect.runSync(right) |
| 154 | } |
| 155 | |
| 156 | // ----------------------------------------------------------------------------- |
| 157 | // compact |
Tested by
no test coverage detected