2017-07-19 14 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クラスの名前を変更しようとしましたが、インスタンスの名前が変更されていないことがわかりました。私はその後、 "Find all and replace all"を実行し、突然PotentialSpriteが "無効な"コンストラクタを持つことを発見しました。

現在のテストでは、「ダーツアナライザ」が終了する前に次のインスタンスの名前を変更しない限り、インスタンスの名前を1つずつ変更できます。

これは正しいとは限りません。ここで何が起こっているのですか?エラーメッセージが正しいか、それとも私が本当に探しているべきものを難読化していますか?

編集:

いいえ。それは、インスタンスの1つのタイプミスが問題だったように見えますが、なぜそれがコンストラクタを分割するのが私を超えているのでしょうか。誰か手掛かりがありますか?

+0

アナライザのDart SDKにバグレポートを作成する –

+0

アナライザの状態が矛盾している(新しいクラス名だが古いコンストラクタ名)と、間違ったエラーメッセージが生成される可能性があります。 (これは決して私自身に遭遇したことはありません) –

+0

SDKやintelliJのようなツールでこの問題はありますか?あなたはリファクタリングのために何を使いましたか? – rkj

答えて

1

これは、Analysis Serverの問題のようです。

ここにhttps://github.com/dart-lang/sdk/issues/newの問題を提出し、このディスカッションへのリンクを含めてください。

ありがとうございます!

関連する問題