Posted at

dart 1.21.0 CHANGELOGを勝手なことをつぶやきながら訳してみた

More than 1 year has passed since last update.


1.21.0

まだDart 1.21.0はリリースされていませんが、リリース予定日を6日過ぎ、オープンイシューがなくなったので、sdk/CHANGELOG.md at master · dart-lang/sdkを訳しました。


Language


  • ジェネルックメソッドの文法だけサポートしたよ。 型引数は実行時には使えないよ。詳しくは未(?)公式仕様を参照してね。

    ということですので、あくまでも文法(訳注:とコンパイル時エラーの意味論)だけです。周辺ツールを含めて影響範囲が色々広いから、まずは肩慣らしということだと思います。

  • 初期化型仮引数(initializing formals)への(訳注:初期化リスト内での)アクセスをサポートしたよ。 例:こんな感じでxyの初期化で使えるよclass C { var x, y; C(this.x): y = x; }
    詳しくは未(?)公式仕様
    を参照してね。

    いままで--initializing-formal-accessで利用可能だった機能ですね。

  • switchのcaseがrethrowで終わる場合は、case通り抜けを警告しないようにしたよ。

    って、rethrowは通り抜けないし、元から。

  • switchのcase全体がbreakcontinuerethrowreturnthrowで終わるブロックだった場合もcase通り抜けを警告しないようにしたよ。

    構文解析が賢くなったってことですね。今回はrethrowを忘れていない。

  • 名前付き引数のデフォルト値区切りに:に加えて=を許すようにしました。

    これ、言うほど重要なのか? きっとあれだ、:で右から型修飾するための布石。


Core library changes



  • dart:coreSet.differenceは引数としてSet<Object>を取るようにしたよ。

    Set.unionSet<T>を取るのは兎も角、Set.intersectionは元からSet<Object>を取るから、Set.differenceでうっかりSet<t>ってしちゃったのを直したって感じかな?


  • dart:developer



    • Serviceクラスの追加。


      • Allows inspecting and controlling the VM service protocol HTTP server.

        VM service protocol HTTP serverが分からな過ぎて訳せない(´・ω・`)


      • Isolateの識別子にアクセスするAPIを提供したよ。






Tool changes



  • Dart Dev Compiler


    • 遅延(ロード)ライブラリに対してloadLibrary()を呼べるようにしたよ。遅延(ロード)ライブラリはまだ積極的(最初)にロードされるよ。 (#27343)

      これもまずは文法だけから。