問題タブ [extractor]
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 - Scalaでパラメータをエクストラクタ(適用解除)に暗黙的な変換を使用することは可能ですか?
文字列をラップする CaseInsensitive というクラスを作成しました (「Scala で大文字と小文字を区別しない比較を行う文字列クラスの実装」を参照)。
CaseInsensitive 型のメンバー変数を持つケース クラスを作成したので、CaseInsensitive 型の変数を抽出するデフォルトの unapply メソッドを取得しますが、次のように使用することを望んでいました。
このコードはコンパイルに失敗します: (コンストラクター行ではなく、抽出行で)
しかし、String から CaseInsensitive への暗黙的な変換により、より詳細なコードを入力する必要がなくなり、これをコンパイルできると思いました。
CaseInsensitive の実装は次のとおりです。
scala - Scala: 2 つのアイテムのいずれかが何らかの条件を満たす場合のパターン マッチング
私はよく、2 つのオブジェクトを比較し、それらが同じか異なるかに基づいて値を生成するコードを書いています。
だから私は書くかもしれません:
2番目と3番目のケースは本当に同じなので、書いてみました:
しかし、運がありません。
いくつかの場所でこの問題に遭遇しましたが、これは単なる具体的な例です。より一般的なパターンは、2 つのものがあり、そのうちの 1 つだけが述語を満たしているかどうかを知りたいので、次のように書きたいと思います。このようなもの:
したがって、ここでの考え方は、OneAndOnlyOne を述語 (この場合は isDefined) で構成でき、複数の場所で使用できるということです。
上記はまったく機能しません。逆方向であるため、述語は返されずにエクストラクターに渡される必要があります。
このようなものはどうですか?
と:
しかし、これはコンパイルされません。
誰でもこのソリューションを機能させる方法を見ることができますか? または、別の解決策を提案しますか? 私はおそらくこれを実際よりも複雑にしています:)
scala - case ステートメントの本文 (またはエクストラクタが使用される他の場所) のパラメータを使用して、エクストラクタをカスタマイズできますか?
基本的に、使用する前に変数に格納することなく、カスタム エクストラクタを構築できるようにしたいと考えています。
これは私がどのように使用するかの実際の例ではありません。正規表現または構造のような他の文字列パターンの場合に使用される可能性が高くなりますが、うまくいけば、私が探しているものを説明できます:
1 つのカスタム エクストラクタを実行するだけでは大きな違いはありませんが、case ステートメント用に大量のエクストラクタのリストを作成する場合は、すべてのエクストラクタをその使用法から分離することで、読みにくくなる可能性があります。
答えはノーだと思いますが、これはできませんが、最初に聞いてみようと思いました:D
scala - パターンマッチングステートメントでScala 2.8.0.RC2コンパイラの問題?
次のモジュールが Scala 2.8.RC[1,2] でコンパイルされないのはなぜですか?
更新 1
回答のアドバイスに従った後の次の問題は、コンパイルが長すぎることです。興味深いことに、上記の case ステートメントを 2 つ削除すると、次のコンパイラ エラーが発生します。
scala - Scala、部分関数
ステートメントを使用してPartialFunction
例外を作成する方法はありますか?case
気になるのは、次のように表現したいからです(scala疑似アヘッド!)...
...部分関数として、および実行
二度作成するので冗長に思えますBigInt
。
ruby - これをRubyで記述するために、カスタムのcaseステートメントを使用するよりも機能的な方法はありますか?
次のコードを想像してみてください。
代わりに他のクラスを選択することもできます。例としてそれらを使用しています。私はScalamatch
とエクストラクターが大好きで、これがRubyで同じことを書くための良い方法かもしれないと思いました。新しいオブジェクトをインスタンス化せずに上記を記述して、===
メソッドを呼び出すことができるようにするためのより良い方法はありますか?
不必要な投稿を避けるために、はい、私はこれを行うことができることを知っています:
scala - ネストされたScalaマッチャーはなぜSome(Some(1),1)が一致しないのですか?
ネストされたマッチングが機能しないようです。これは奇妙な制限です。
動作の例は次のとおりです。
これは機能します:
今、私はただの愚痴ですか、それともこれを達成するためのより良い方法はありますか?
xpath - Jmeterのxpath抽出機能のxpathクエリ
誰かが私に以下の応答からsessionIdの値を取得するためのxmlクエリを提供できますか?
/ ns2:createUserResponse / @ sessionIdを使用してみましたが、何も返されないようです。このクエリをjmeterのXPATHエクストラクタで使用したいと思います。私の要件:xpath extractorを使用してsessionId値を取得し、後続のリクエストでその値を使用する必要があります。
よろしくお願いします
scala - 型パラメーターを取り除くことによる一致句の警告の修正
次の徹底的な一致を実装したいのですが、型パラメーターを削除する方法がわからないため、型パラメーターが消去されるという警告が表示されます。
私の具体的なケースでは、一致の本体が非常に大きく、代わりにandcase n
に対して一致するようにこれ以上 match 句を追加したくありません(私の具体的なケースでは 2 つ以上のサブクラスがあり、それらも変更可能であり、したがってケースクラスではありません)。解決された型は である必要がありますが、 ではありません。QLeaf
QNode
QNonEmpty[V]
QNonEmpty[_]
と の両方にQNonEmpty
一致するエクストラクタを作成できますか?QLeaf
QNode