2017-07-19 96 views
0

我有一个类:飞镖编译器疯了,还是我?

class PotentialSprite extends NPC { 
    String helpPhrase = "default phrase "; 
    num helpfulness = 0; 
    bool armless = false; 
    bool disaster = false; 
    bool illegal = false; 
    PotentialSprite(String name, num id, Session session): super(name, id, session); 
} 

它工作正常。我有一大堆这个类的实例作为全局变量在同一个文件中。

我试图用重构菜单重命名PotentialSprite类,但发现它没有重命名实例。然后,我做了一个“查找并替换所有”,只是发现突然PotentialSprite现在有一个“无效的”构造函数。

当前的测试显示我可以一次重命名一个实例,只要在“Dart Analyzer”完成之前不重命名下一个实例即可。

这......不对。这里发生了什么?错误消息是否正确,还是混淆了我应该查找的内容?

编辑:

好的。它看起来像是其中一个实例中的拼写错误是问题,但为什么它会让构造函数中断超出我的意思。任何人都有任何线索?

+0

我会在Dart SDK中创建一个错误报告(对于分析器) –

+0

如果分析器的状态不一致(新的类名称,但是旧的构造函数名称),它可能会产生错误的错误消息。 (从来没有遇到过这个问题) –

+0

这个SDK的问题,还是像intelliJ这样的工具?你用什么来重构? – rkj

回答