on master help sign in
Update some uses of UF for the shorter names
d3fa290Evan Czaplicki
src/Type/Occurs.hs+1−1
@@ -28,7 +28,7 @@ occursHelp seen var foundCycle =
28 return True
28 return True
29
29
30 else
30 else
31− do (Descriptor content _ _ _) <- UF.descriptor var
31+ do (Descriptor content _ _ _) <- UF.get var
32 case content of
32 case content of
33 FlexVar _ ->
33 FlexVar _ ->
34 return foundCycle
34 return foundCycle
src/Type/Type.hs+8−8
@@ -311,16 +311,16 @@ toSrcType variable =
311
311
312variableToSrcType :: Variable -> StateT NameState IO Can.Type
312variableToSrcType :: Variable -> StateT NameState IO Can.Type
313variableToSrcType variable =
313variableToSrcType variable =
314− do descriptor <- liftIO $ UF.descriptor variable
314+ do descriptor <- liftIO $ UF.get variable
315 let mark = _mark descriptor
315 let mark = _mark descriptor
316 if mark == occursMark
316 if mark == occursMark
317 then
317 then
318 return (Can.TVar "∞")
318 return (Can.TVar "∞")
319
319
320 else
320 else
321− do liftIO $ UF.modifyDescriptor variable (\desc -> desc { _mark = occursMark })
321+ do liftIO $ UF.modify variable (\desc -> desc { _mark = occursMark })
322 srcType <- contentToSrcType variable (_content descriptor)
322 srcType <- contentToSrcType variable (_content descriptor)
323− liftIO $ UF.modifyDescriptor variable (\desc -> desc { _mark = mark })
323+ liftIO $ UF.modify variable (\desc -> desc { _mark = mark })
324 return srcType
324 return srcType
325
325
326
326
@@ -337,7 +337,7 @@ contentToSrcType variable content =
337
337
338 Nothing ->
338 Nothing ->
339 do name <- getFreshVarName
339 do name <- getFreshVarName
340− liftIO $ UF.modifyDescriptor variable (\desc -> desc { _content = FlexVar (Just name) })
340+ liftIO $ UF.modify variable (\desc -> desc { _content = FlexVar (Just name) })
341 return (Can.TVar name)
341 return (Can.TVar name)
342
342
343 FlexSuper super maybeName ->
343 FlexSuper super maybeName ->
@@ -347,7 +347,7 @@ contentToSrcType variable content =
347
347
348 Nothing ->
348 Nothing ->
349 do name <- getFreshSuperName super
349 do name <- getFreshSuperName super
350− liftIO $ UF.modifyDescriptor variable (\desc -> desc { _content = FlexSuper super (Just name) })
350+ liftIO $ UF.modify variable (\desc -> desc { _content = FlexSuper super (Just name) })
351 return (Can.TVar name)
351 return (Can.TVar name)
352
352
353 RigidVar name ->
353 RigidVar name ->
@@ -503,11 +503,11 @@ getFreshSuperHelp name index taken =
503
503
504getVarNames :: Variable -> TakenNames -> IO TakenNames
504getVarNames :: Variable -> TakenNames -> IO TakenNames
505getVarNames var takenNames =
505getVarNames var takenNames =
506− do (Descriptor content rank mark copy) <- UF.descriptor var
506+ do (Descriptor content rank mark copy) <- UF.get var
507 if mark == getVarNamesMark
507 if mark == getVarNamesMark
508 then return takenNames
508 then return takenNames
509 else
509 else
510− do UF.setDescriptor var (Descriptor content rank getVarNamesMark copy)
510+ do UF.set var (Descriptor content rank getVarNamesMark copy)
511 case content of
511 case content of
512 Error _ ->
512 Error _ ->
513 return takenNames
513 return takenNames
@@ -580,7 +580,7 @@ addName index givenName var makeContent takenNames =
580 case Map.lookup indexedName takenNames of
580 case Map.lookup indexedName takenNames of
581 Nothing ->
581 Nothing ->
582 do if indexedName == givenName then return () else
582 do if indexedName == givenName then return () else
583− UF.modifyDescriptor var $ \(Descriptor _ rank mark copy) ->
583+ UF.modify var $ \(Descriptor _ rank mark copy) ->
584 Descriptor (makeContent indexedName) rank mark copy
584 Descriptor (makeContent indexedName) rank mark copy
585 return $ Map.insert indexedName var takenNames
585 return $ Map.insert indexedName var takenNames
586
586