警告:`Module` 的导入是多余的,除了可能从 `Module` 导入实例
Warning: The import of `Module` is redundant except perhaps to import instances from `Module`
我最近开始使用 Sublime Text 编写代码。这让我注意到了一些我在使用 Leksah 时没有注意到的警告。所以我得到了这个:
import qualified Data.Set as S
给出:
Warning:
The qualified import of `Data.Set' is redundant
except perhaps to import instances from `Data.Set'
To import instances alone, use: import Data.Set()
另一方面,来自 Data.Foldable
的这两个导入中的任何一个都没有给出任何警告:
import Data.Foldable (foldrM, mapM_,foldr,foldl',concat)
-- or
import Data.Foldable
所以我不太确定 Data.Set 的警告是什么意思。我希望 "redundant" 意味着没有必要。如果我删除导入,它不会编译,因为我为 Data.Set.
使用了很多东西
同时坐在它旁边的是 import qualified Data.Map as M
,它也没有发出任何警告。
所以我对那个警告的意思完全不明白。
一般表示:
- 你导入了一个模块,但你根本不使用它,
- 您导入的模块已被您导入的另一个模块导入。
这可能是您不再使用该模块的某些重构的结果。或者,您可能已经通过导入预期了此模块的未来使用。
此消息是在您使用 -Wall
选项编译项目时生成的。
尝试删除显示错误的行,它通常有效;-)
我最近开始使用 Sublime Text 编写代码。这让我注意到了一些我在使用 Leksah 时没有注意到的警告。所以我得到了这个:
import qualified Data.Set as S
给出:
Warning:
The qualified import of `Data.Set' is redundant
except perhaps to import instances from `Data.Set'
To import instances alone, use: import Data.Set()
另一方面,来自 Data.Foldable
的这两个导入中的任何一个都没有给出任何警告:
import Data.Foldable (foldrM, mapM_,foldr,foldl',concat)
-- or
import Data.Foldable
所以我不太确定 Data.Set 的警告是什么意思。我希望 "redundant" 意味着没有必要。如果我删除导入,它不会编译,因为我为 Data.Set.
使用了很多东西同时坐在它旁边的是 import qualified Data.Map as M
,它也没有发出任何警告。
所以我对那个警告的意思完全不明白。
一般表示:
- 你导入了一个模块,但你根本不使用它,
- 您导入的模块已被您导入的另一个模块导入。
这可能是您不再使用该模块的某些重构的结果。或者,您可能已经通过导入预期了此模块的未来使用。
此消息是在您使用 -Wall
选项编译项目时生成的。
尝试删除显示错误的行,它通常有效;-)