mirror of
https://github.com/unisonweb/unison.git
synced 2024-09-17 13:27:30 +03:00
TDNR seems to work!
This commit is contained in:
parent
03f2beb6aa
commit
7c55d507b7
@ -1,3 +1,4 @@
|
||||
{-# LANGUAGE BangPatterns #-}
|
||||
{-# LANGUAGE LambdaCase #-}
|
||||
{-# LANGUAGE ScopedTypeVariables #-}
|
||||
{-# LANGUAGE OverloadedLists #-}
|
||||
@ -167,13 +168,14 @@ typeDirectedNameResolution resultSoFar env = do
|
||||
Typechecking (Context.Note (Context.SolvedBlank (B.Resolve loc n) _ it) _)
|
||||
-> do
|
||||
suggestions <-
|
||||
State.lift
|
||||
fmap join
|
||||
. State.lift
|
||||
. traverse (resolve it)
|
||||
. join
|
||||
. maybeToList
|
||||
. Map.lookup (Text.pack n)
|
||||
$ terms env
|
||||
suggestOrReplace loc (Text.pack n) it (join suggestions)
|
||||
suggestOrReplace loc (Text.pack n) it suggestions
|
||||
_ -> pure ()
|
||||
where
|
||||
suggestOrReplace
|
||||
|
@ -4,20 +4,19 @@
|
||||
|
||||
module Unison.Test.Typechecker where
|
||||
|
||||
import EasyTest
|
||||
|
||||
import Control.Monad (join, void)
|
||||
import Control.Monad.IO.Class (liftIO)
|
||||
import Data.Foldable (traverse_)
|
||||
import Data.Text (unpack)
|
||||
import Data.Text.IO (readFile)
|
||||
import EasyTest
|
||||
import System.FilePath (joinPath, splitPath)
|
||||
import System.FilePath.Find (always, extension, find, (==?))
|
||||
import Unison.FileParsers (Type, Term, parseAndSynthesizeAsFile)
|
||||
import Unison.Parser as Parser
|
||||
import qualified Unison.PrintError as PrintError
|
||||
import qualified Unison.Result as Result
|
||||
import Unison.Result (Result(..))
|
||||
import qualified Unison.Result as Result
|
||||
import Unison.Symbol (Symbol)
|
||||
import Unison.Util.Monoid (intercalateMap)
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
-- Should resolve + with Type-directeded name resolution
|
||||
|
||||
x :: UInt64
|
||||
x : UInt64
|
||||
x = 4 + 2
|
||||
|
||||
x
|
||||
|
Loading…
Reference in New Issue
Block a user