2017-12-23 114 views
6

GHC tạo cảnh báo khi có hàng nhập ẩn (xem bên dưới). Mục đích là để thay thế chúng bằng cách nhập khẩu rõ ràng. Có cách tự động nào để tạo danh sách (thay vì tìm kiếm theo cách thủ công mã) không?Tìm nhập khẩu rõ ràng cho danh sách -nhập-nhập-danh sách của ghc

/Users/srid/code/slownews/backend/src/SlowNews/Main.hs:10:1: warning: [-Wmissing-import-lists] 
    The module ‘Control.Exception’ does not have an explicit import list 
    | 
10 | import   Control.Exception 
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 

/Users/srid/code/slownews/backend/src/SlowNews/Main.hs:13:1: warning: [-Wmissing-import-lists] 
    The module ‘Control.Monad.IO.Class’ does not have an explicit import list 
    | 
13 | import   Control.Monad.IO.Class 
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 

Trả lời

5

GHC có cờ -ddump-minimal-imports sẽ thực hiện thủ thuật.

+0

Cách sử dụng cờ này để đạt được kết quả mong muốn: https://stackoverflow.com/a/32959693/55246 –

1

Có một yêu cầu kéo mở un importify công cụ mà tôi đang làm việc. Sau này được thực hiện, bạn sẽ có thể chuyển đổi nhập khẩu tiềm ẩn để rõ ràng tự động:

https://github.com/serokell/importify/pull/82

0

Dự án Haskell Tools có một số dụng cụ tìm kiếm đẹp cho điều đó. Rõ ràng nó hoạt động trong Atom nhưng tôi không thể làm cho nó hoạt động với nguyên tử hoặc beta-beta trên macOS. Tuy nhiên, nó hoạt động ở dòng lệnh. Tôi có a simple example stack project set up. Các Main.hs sử dụng một danh sách nhập khẩu rõ ràng:

module Main where 

import System.Environment 

doMain = print =<< getEnvironment 

main = doMain 

BTW, tôi cài đặt các công cụ Haskell với:

$ stack install haskell-tools-daemon haskell-tools-cli fswatch 

Sau đó thực hiện:

$ ht-refact -e 'ProjectOrganizeImports' . 

Bây giờ git nói với tôi rằng tôi có sau khác:

-import System.Environment 
+import System.Environment (getEnvironment) 

Kiểm tra trang web Haskell Tools để biết ví dụ tương tác về cách hoạt động của trình chỉnh sửa trong trình chỉnh sửa. Trông giống như một bộ công cụ tái cấu trúc đầy triển vọng.

Các vấn đề liên quan