11{-# LANGUAGE LambdaCase #-}
22{-# LANGUAGE ScopedTypeVariables #-}
3+ {-# LANGUAGE TupleSections #-}
34{-# LANGUAGE TypeFamilies #-}
45
56module Telomare.Parser where
67
78import Control.Comonad.Cofree (Cofree (.. ), unwrap )
89import Control.Lens.Plated (Plated (.. ))
9- import Control.Monad (void , join )
10+ import Control.Monad (join , void )
1011import Control.Monad.State (State )
1112import Data.Bifunctor (Bifunctor (first , second ), bimap )
1213import Data.Functor (($>) )
@@ -354,7 +355,7 @@ parseImportQualified = do
354355parseOneAssignmentOrBrand :: TelomareParser (String , AnnotatedUPT )
355356parseOneAssignmentOrBrand =
356357 parseAssignment
357- <|> ((\ exp -> ( " 8@$temp_label$@8" , exp ) ) <$> parseBrand)
358+ <|> ((" 8@$temp_label$@8" ,) <$> parseBrand)
358359
359360-- | Parse assignment or Brands, and add adding binding to ParserState.
360361parseAssignmentsAndBrands :: TelomareParser [(String , AnnotatedUPT )]
@@ -363,7 +364,7 @@ parseAssignmentsAndBrands = do
363364 let removeBrands = \ case
364365 (" 8@$temp_label$@8" , exp ) -> expandBrand exp
365366 x -> [x]
366- pure . join $ removeBrands <$> tempBindingList
367+ pure ( removeBrands =<< tempBindingList)
367368
368369-- | Parse top level expressions.
369370parseTopLevelWithExtraModuleBindings :: [(String , AnnotatedUPT )]
0 commit comments