mirror of
https://github.com/koalaman/shellcheck.git
synced 2025-08-06 20:17:21 +08:00
getParentTree: avoid pattern matching in do notation
Pattern matching in "do" requires a MonadFail context, which we don't have in pure code. Instead, we'll use "case-of" to bind the part of the state that we're interested in.
This commit is contained in:
@@ -240,9 +240,10 @@ getParentTree t =
|
||||
where
|
||||
pre t = modify (first ((:) t))
|
||||
post t = do
|
||||
(_:rest, map) <- get
|
||||
case rest of [] -> put (rest, map)
|
||||
(x:_) -> put (rest, Map.insert (getId t) x map)
|
||||
(x, map) <- get
|
||||
case x of
|
||||
_:rest -> case rest of [] -> put (rest, map)
|
||||
(x:_) -> put (rest, Map.insert (getId t) x map)
|
||||
|
||||
-- Given a root node, make a map from Id to Token
|
||||
getTokenMap :: Token -> Map.Map Id Token
|
||||
|
Reference in New Issue
Block a user