問題タブ [hlist]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - Nat に関する HList 型パラメータの長さ
パラメータのないメソッドがあるとします。型パラメータの長さを決定するにはどうすればよいですか?
python - Tkinter Tix チェックリスト Hlist ヘッダー構成オプション
tcl/tk の専門家が、 Tix CheckList Hlist Headerに関するこの超ニッチな質問に答えてくれることを願っています。私がしたいのは、背景色を醜い灰色から白に変更することだけです。
tix で何にでも使用できるオプション (cnf={}または) を知ることさえ非常に難しいと思います。**kw私は、self.checklist.hlist.config().keys()どのリターンができるかを発見しました:
どのオプションが利用可能かを確認するために、実際のヘッダー オブジェクトに対してこれを行う方法がわかりません。
これは次のようになります。
これを作成するコードは次のとおりです。
追加情報:
ちなみに、私は主にこのサイトを使用して、どのメソッドが利用可能かを把握していますhlist- http://epydoc.sourceforge.net/stdlib/Tix.HList-class.html
この例も役に立ちました: https://svn.python.org/projects/stackless/trunk/Demo/tix/samples/SHList2.py
何を試した...
たくさんのことが何時間も続きます。これは次の場所にあるべきだと思います:
しかし、私は試しました: background, selectbackground, bg, color... など。それらはすべて同じ_tkinter.TclError: unknown option "-NAMEHERE"メッセージで終了します。
scala - 戻り値で型情報が失われないようにする
メソッドの戻り値で型情報が失われないようにする方法を見つけようとしています。
私は次のものを持っています:
IntelliJs の「型アノテーションを追加」を使用すると、次の型が得られます。
mkDefault を呼び出すときに Person のフィールドを指定したくないことを除けば、これで問題ありません。だから私はこれを作成しました:
今私はできる:
IntelJ から推論された型が次のようになることを除いて、これは良いことです。
defs1 の推定型を defs0 の推定型と等しくするにはどうすればよいですか?
*クラス Person のフィールドを指定する必要なし
scala - 複数の JsResult を Shapeless と組み合わせる
複数の JsResult を 1 つに結合する方法を探しています。Shapeless を使用しない最初の試みは次のとおりです。
私が欲しいのは、n JsResult を取り、それらを単一の JsResult[(A,B,C,...)] に結合する関数です。これで、アリティの抽象化に関する scala の制限がわかりました。Shapeless で複数のコードを試しましたが、JsResult が型コンストラクターであり、差異の問題であるため、コンパイルできませんでした。私が考えているアルゴリズムは次のとおりです。
Any 型の JsResult の HList を引数とする関数を書く。初期要素として JsSuccess(HNil) を使用し、折りたたみ関数として上記の関数のバリエーション (結果の型を JsResult[HList] に変更) を使用して、リストの foldRight を作成します。
これが私の最終的なコードです(コンパイルしていません)
この問題を解決する方法を理解していただき、ありがとうございます。
編集:私はいくつかの進歩を遂げました
このコードがコンパイルされると、JsResult[_] のリストが JsResult[HList] に正常に変換されます。次に、その HList をタプルに変換して、ケース クラスのタプル メソッドに渡す必要があります。Generic オブジェクトの使用に関する例を見ましたが、Generic[some case class].to メソッドが HList の代わりに Repr 引数を想定しているため、コンパイルされません。誰にもアイデアはありますか?ありがとう
scala - 形のない HList の型をマップする
値にアクセスせずにHList、scala のパッケージからの型をマップしようとしています。shapeless
以下は、HList の値のマッピングに成功します。
涼しい!implicitly[A =:= B]何らかの理由で使用できないことは別として、 an の値はHListマップされているため、その型もあります。
ここで、値を持っていないが、HListその型はわかっているとします。その型をどのようにマッピングできますか?
map hereの定義に基づいて、次のことを試しました。
HList値にアクセスせずに、マップされた型を取得するにはどうすればよいですか? コンパイラが何かを証明できない理由をデバッグする方法はありますか? 読んでくれてありがとう。
scala - Scala、gremlin-scala、HLists、Poly2、RightFold、および欠落している暗黙的なプリペンド
そのため、一連の操作を from にカプセル化して、それらを実行できるようにしようとしgremlin-scalaてHListいRightFoldます (これにより、gremlin クエリをデータとして構築できます: 具体的にはHListof Operations)。
これが私が言いたいことです:通常、あなたはgremlin-scalaそうするように電話をかけることができます:
これで問題ありませんが、クエリをデータとして構築できるようにしたいと考えています。私はこれを次HListのOperationsようにモデル化しています:
HList次に、これらを次のように配置してクエリを作成できます。
これらが にあるHListので、 を実行して、RightFoldそれらを 1 つずつグラフに適用できます。
そして、次のように呼び出します。
これはすべて機能します!そして、大きな約束を示しています。
ここで私の問題にたどり着きます:as操作でこれを実行しようとすると、Operationコンパイルすることができます:
(コンパイラが別の方法で不平を言っていたので、そこに追加し(implicit p: Prepend[In, ::[A, HNil]])ました)...しかし、このケースの暗黙的なハンドラーを他のものと一緒に作成しようとすると、失敗します:
だから、ここでいくつかの質問:
- これは何を暗示
Prependしているのですか? なぜそれが必要なのですか? Prepend通常の呼び出し時に暗黙的なものを見つけることができるのに、それを上書きasしようとすると失敗するのはなぜRightFoldですか?- の暗黙的なインスタンスを作成するにはどうすればよい
Prependですか? - 作成したら、どのように呼び出しに渡します
operateか? - これを行う正しい方法は何ですか??
もっと質問があるかもしれませんが、これらが主なものです。私は型レベルのプログラミングとシェイプレス全般について読んでいて、本当に気に入っていますが、この種のものは気が狂っています。ここに欠けている微妙なタイプのものがあることは知っていますが、欠けているものをどこから解読し始めればよいかを知るのは困難です。
助けてくれてありがとう!scala と shapeless をこよなく愛し、早くこの障害を乗り越えたいと思っています。
編集: ここで問題を再現する最小限のレポを作成しました: https://github.com/bmeg/leprechaun
うまくいけば、それは役に立ちます!
json - Circe を使用して、HList を含むケース クラスを JSON 文字列に解析する
私はScalaで何かをしています。私は次のケースクラスを持っています:
Circeを使用して、このタイプの JSON 表現を取得したいと思います。また、結果の JSON 文字列を型にマップし直したいと思います。
モジュール circe-shapes は、HList の自動派生を行い、HList から JSON へ、およびその逆を簡単に実行できます。次の例を参照してください。
「標準」タイプを含むケース クラスも自明です。
HList の型を明示的に指定すると驚くほどうまくいきますが、HList の目的が少し損なわれます。
Circe は任意の HList をデコードできますか?
