diff options
| author | Josh Rahm <rahm@google.com> | 2022-11-22 12:12:25 -0700 |
|---|---|---|
| committer | Josh Rahm <rahm@google.com> | 2022-11-22 12:12:25 -0700 |
| commit | 8708716ce903d30097265ec95e7adcf3d030d6de (patch) | |
| tree | a5bb23a8c5550206364eb494821026a5f27aa4ce /src/Rahm/Desktop/XMobarLog/PendingBuffer.hs | |
| parent | 43a880fbbcbd76ad103cf0633bd7bb8a74077556 (diff) | |
| download | rde-8708716ce903d30097265ec95e7adcf3d030d6de.tar.gz rde-8708716ce903d30097265ec95e7adcf3d030d6de.tar.bz2 rde-8708716ce903d30097265ec95e7adcf3d030d6de.zip | |
withPendingBuffer -> pushPendingBuffer.
Diffstat (limited to 'src/Rahm/Desktop/XMobarLog/PendingBuffer.hs')
| -rw-r--r-- | src/Rahm/Desktop/XMobarLog/PendingBuffer.hs | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/Rahm/Desktop/XMobarLog/PendingBuffer.hs b/src/Rahm/Desktop/XMobarLog/PendingBuffer.hs index 1ae298b..d49b835 100644 --- a/src/Rahm/Desktop/XMobarLog/PendingBuffer.hs +++ b/src/Rahm/Desktop/XMobarLog/PendingBuffer.hs @@ -46,7 +46,14 @@ clearPendingBuffer = do getPendingBuffer :: X [Char] getPendingBuffer = unPendingBuffer <$> XS.get -withPendingBuffer :: X a -> X a -withPendingBuffer fn = do +pushPendingBuffer :: String -> X a -> X a +pushPendingBuffer newPendingBuffer fn = do saved <- getPendingBuffer + setPendingBuffer newPendingBuffer + fn <* setPendingBuffer saved + +pushAddPendingBuffer :: String -> X a -> X a +pushAddPendingBuffer toAdd fn = do + saved <- getPendingBuffer + setPendingBuffer (saved ++ toAdd) fn <* setPendingBuffer saved |