This commit is contained in:
@@ -139,6 +139,24 @@ export const mapEffect: {
|
|||||||
)),
|
)),
|
||||||
}))
|
}))
|
||||||
|
|
||||||
|
export const mapStream: {
|
||||||
|
<A, ER, EW, RR, RW>(
|
||||||
|
self: Lens<A, ER, EW, RR, RW>,
|
||||||
|
f: (changes: Stream.Stream<NoInfer<A>, NoInfer<ER>, NoInfer<RR>>) => Stream.Stream<NoInfer<A>, NoInfer<ER>, NoInfer<RR>>,
|
||||||
|
): Lens<A, ER, EW, RR, RW>
|
||||||
|
<A, ER, EW, RR, RW>(
|
||||||
|
f: (changes: Stream.Stream<NoInfer<A>, NoInfer<ER>, NoInfer<RR>>) => Stream.Stream<NoInfer<A>, NoInfer<ER>, NoInfer<RR>>,
|
||||||
|
): (self: Lens<A, ER, EW, RR, RW>) => Lens<A, ER, EW, RR, RW>
|
||||||
|
} = Function.dual(2, <A, ER, EW, RR, RW>(
|
||||||
|
self: Lens<A, ER, EW, RR, RW>,
|
||||||
|
f: (changes: Stream.Stream<NoInfer<A>, NoInfer<ER>, NoInfer<RR>>) => Stream.Stream<NoInfer<A>, NoInfer<ER>, NoInfer<RR>>,
|
||||||
|
): Lens<A, ER, EW, RR, RW> => make({
|
||||||
|
get get() { return self.get },
|
||||||
|
get changes() { return f(self.changes) },
|
||||||
|
modify: self.modify,
|
||||||
|
}))
|
||||||
|
|
||||||
|
|
||||||
export const mapField: {
|
export const mapField: {
|
||||||
<A extends object, K extends keyof A, ER, EW, RR, RW>(
|
<A extends object, K extends keyof A, ER, EW, RR, RW>(
|
||||||
self: Lens<A, ER, EW, RR, RW>,
|
self: Lens<A, ER, EW, RR, RW>,
|
||||||
|
|||||||
Reference in New Issue
Block a user