Movatterモバイル変換


[0]ホーム

URL:


はてなブックマークアプリ

サクサク読めて、
アプリ限定の機能も多数!

アプリで開く

はてなブックマーク

タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

shapelessに関するWindymeltのブックマーク (3)

  • shaplessでdeclineのOptsを導出する | DevelopersIO

    はじめに declineではオプション引数ごとに詳細を指定してOptsを生成する必要があります。case classのフィールド名をそのままオプション名にするので十分な場合にはOptsを生成するコードは冗長になります。今回はshapelessを使ってcase classの定義からOptsを導出してみます。 やること case classの各フィールドから対応するOptsを導出し、case class自体のOptsへ合成します。以下のコードのようなイメージです。 final case class Config(name: String, favoriteNumber:Int) val name = Opts val favoriteNumber = Opts val configOpts = (name, favoriteNumber).mapN(Config.apply) Optsの導出は

    shaplessでdeclineのOptsを導出する | DevelopersIO
    • 入門⚡Shapeless

      先程、 1.2.1 で以下のように述べました。 ジェネリックプログラミングとは、クラスや型といった具体的な要素から「構造」という要素を取り出し、それ単体で物事をうまく扱おうという考え方を指しています。 では、 構造 とは何でしょう。数学的な難しい話は割愛しますが、 代数的データ型(Algebraic Data Types, ADTs) を用いることで再帰を含む複雑なデータ型を表現できることがわかっています。 そして、多くの言語ではこのADTsを言語レベルである程度サポートするための機能が備えられており、Scalaもこうした言語のうちの一つです(後述する Tuple や sealed trait などがこれをサポートしています)。 ADTsは、 直積(Product) と 直和(Coproduct、 余積とも) から成るデータ型の総称です。数学的な詳細な説明は割愛しますが、直積は複数のデ

      Windymelt
      Windymelt2022/12/15非公開
      ScalaのShapelessっていうライブラリがすごいのですが、日本語の入門記事が無かったので、僕が今持っている全てのShapeless知識をまとめました ツッコミ歓迎です
        • 残りのブックマークを読み込んでいます1

        お知らせ

        公式Twitter

        • @HatenaBookmark

          リリース、障害情報などのサービスのお知らせ

        • @hatebu

          最新の人気エントリーの配信

        処理を実行中です

        キーボードショートカット一覧

        j次のブックマーク

        k前のブックマーク

        lあとで読む

        eコメント一覧を開く

        oページを開く

        はてなブックマーク

        公式Twitter

        はてなのサービス

        • App Storeからダウンロード
        • Google Playで手に入れよう
        Copyright © 2005-2025Hatena. All Rights Reserved.
        設定を変更しましたx

        [8]ページ先頭

        ©2009-2025 Movatter.jp