問題タブ [coerce]
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.
c# - C#の同一レイアウトを使用して異なる名前空間の型を強制する
FedEx の Web サービス API のインターフェースを書き始めました。私が興味を持っている 3 つの異なる API があります。レート、発送、追跡。SvcUtil.exe を使用してサービス プロキシを生成しています。
異なるサービス エンドポイントは、それぞれ独自の WSDL ファイルで FedEx によって指定されます。各サービス エンドポイントには独自の xml 名前空間があります (例: http://fedex.com/ws/rate/v5およびhttp://fedex.com/ws/ship/v5 )
サービス エンドポイントは、Address、Measurements、Weight、AuthenticationDetail、ClientDetail など、かなりの数の同じタイプを使用します。
ここに問題があります。すべての WSDL ファイルを同時に SvcUtil.exe に提供できます。通常は、同一の型を 1 つの共有型に結合しますが、FedEx のサービスはそれぞれ独自の名前空間にあるため、それらは、その名前空間の下の各 WSDL ファイルでこれらの型を再宣言します。代わりに、名前空間ごとに 1 つの Address、Address1、および Address2 になります。
この問題を解決するために、svcutil を介して各 WSDL を個別に実行し、それらをそれぞれ独自の .NET 名前空間 (FedEx.Rate、FedEx.Ship、FedEx.Track など) に配置することで、この問題を解決しています。これに関する問題は、各名前空間 (Fedex.Rate.Address、FedEx.Ship.Address) に個別のアドレス タイプがあることです。
これにより、GetAuthenticationDetail() ファクトリ メソッドのようにサービス間で使用されるコードを一般化することが難しくなるため、さまざまなサービスを使用するすべての場所でそのコードを繰り返す必要がなくなります。
C#でFedEx.Rate.AddressをFedEx.Ship.Addressに強制する方法はありますか?
ruby - Ruby では、coerce() は実際にどのように機能しますか?
クラスがあり、次のようPoint
に実行する方法を知っていると言われています。point * 3
出力:
しかしその後、
理解されていません:
Point
Fixnum
(TypeError
)に強制することはできません
したがって、インスタンス メソッドをさらに定義する必要がありますcoerce
。
出力:
3 * point
だから と同じだと言われてい3.*(point)
ます。つまり、インスタンス メソッド*
は引数を取りpoint
、 object を呼び出します3
。
さて、このメソッド*
は点を掛ける方法がわからないので、
が呼び出され、配列が返されます。
そして*
もう一度それに適用されます、それは本当ですか?
これで、これが理解され、クラスPoint
のインスタンス メソッドによって実行されるように、新しいオブジェクトが作成されました。*
Point
質問は:
誰が呼び出すの
point.coerce(3)
ですか?それは自動的にRubyですか、それとも例外をキャッチしての*
メソッド内のコードですか?Fixnum
それともcase
、既知のタイプのいずれかがわからない場合に呼び出すステートメントによるものcoerce
ですか?coerce
常に 2 つの要素の配列を返す必要がありますか? 配列ではありませんか?それとも、3要素の配列にすることができますか?そして、要素 1 の引数を使用して、元の演算子 (またはメソッド)
*
が要素 0 で呼び出されるという規則はありますか? (要素 0 と要素 1 は、 によって返される配列内の 2 つの要素coerce
です。) 誰がそれをしますか? それはRubyによって行われますか、それともコードで行われますFixnum
か? のコードで行うFixnum
場合、強制を行うときに誰もが従うのは「慣例」ですか?したがって、次のようなこと
/li>*
を行うコードである可能性があります。Fixnum
Fixnum
では、インスタンス メソッドに何かを追加するのは本当に難しいのcoerce
でしょうか。すでに多くのコードが含まれており、数行を追加して機能を強化することはできません (ただし、そうしたいことはありますか?)
/li>coerce
クラス内のはPoint
非常に一般的であり、*
または+
それらが推移的であるために機能します。Point から Fixnum を引いたものを次のように定義した場合など、推移的でない場合はどうなるでしょうか。
ruby - Rubyでcoerce()を使って「20点」「20点」を実装する方法は?
Ruby では、
実施する予定です。
しかし、次のコード:
出力:
30 - p
実際にp - 30
は、強制機能によって取得されます。動作させることはできますか?
-
メソッドがこのように引数を強制しないことに、私は実際に驚いています:
つまり、関数は を返すnegated version of a - b
だけでなく、 a を返しますa - b
。
ruby - Rubyでは、coerce()メソッドは、強制するために助けが必要な演算子を知ることができますか?
Rubyでは、多くのcoerce()ヘルプを次の方法で実行できるようです。
つまり、いつ
が必要な場合、Fixnum3
はRationalの追加を処理する方法を知らないため、rational.coerce(3)を呼び出してRational#coerceにヘルプを要求し、この強制インスタンスメソッドは呼び出し元に次のように通知します。
では、ほとんどのオペレーターがこのメソッドを使用できるが、(a --b)!=(b --a)の状況では使用できない場合はどうなるでしょうか。coerce()は、それがどの演算子であるかを認識し、それらの特殊なケースを処理するだけで、(a op b)==(b op a)である他のすべてのケースを処理するために単純な[self、something]を使用できますか?(opは演算子です)。
wpf - コンテンツが変更される前の WPF DependencyProperty イベント
最初に、問題のコンテキストを説明します。より良い方向に私を向けることができるかもしれないからです.
オブジェクトに取り消しとやり直しのようなシステムを実装する必要があります。オブジェクトには、一連の依存関係プロパティがあります。一部は double、int、string ですが、一部は DependencyObject 型でもあります。プロパティの値を変更する前に保存する必要があるため、CoerceValueCallback を追加しました。
OnPropertyChanging では、変更する前に値を保存します。MyCustomizableBackground は、いくつかの依存関係プロパティを持つ DependencyObject です。
問題は、この場合、プロパティとしてカスタム オブジェクトがある場合、OnPropertyChanging メソッドはトリガーされませんが、共通の型がある場合はトリガーされることです。
後で編集: 質問の一部が非常に曖昧であることに気付き、別の質問をしました here . 問題の最初の部分で、ジュリアンは私をより良い方向に向けました。
r - write.table経由でRプログラム(ex)を使用して、「.rtest」出力をファイルに書き込みますか?
私はRを使用して、保存された.csvファイルを特定のペアワイズ方法で開き、統計テストを実行しています(mantel.rtest
パッケージ「ade4」に含まれています)。.csv ファイルは、「fileAX」または「fileBY」のいずれかの順番で名前が付けられます。ここで、X と Y は整数です。
このテストの結果を 1 つのファイルに保存したいのですが、いくつか問題が発生しています。
コードは次のとおりです (「貼り付け」の非効率的な使い方をお許しください:
これを実行しようとすると、次のエラー メッセージが表示されます。
「unlist」や「as.vector」などのさまざまな関数を使用して、「mantelout」をより使いやすい形式に変換しようとしましたが、役に立ちませんでした。何かご意見は?
ありがとう、WAW
編集: R 環境でのこのテストの出力は次のようになります。
python - Python: 新しいスタイルのクラスを強制する
このコードを「そのまま動作」させたい:
もちろん、簡単な方法は と書くことですint(c)/3
が、設定用のミニ言語として、より単純な perl 風の構文を有効にしたいと考えています。
「古いスタイル」のクラス (オブジェクトから継承しない) を使用する場合、__coerce__
メソッドを定義するだけでこれを非常に簡単に実行できることは注目に値しますが、古いスタイルのクラスは非推奨であり、python3 で削除されます。
新しいスタイルのクラスで同じことをすると、次のエラーが発生します。
これは設計によるものだと思いますが__coerce__
、新しいスタイルのクラスで古いスタイルの動作をシミュレートするにはどうすればよいですか? 以下に私の現在の解決策を見つけることができますが、それはかなり醜く、長々としたものです。
これは関連するドキュメントです:(私は思う)
ボーナスポイント:
r - データ フレームを xts に変換する
as.xts() メソッドを使用して、データ フレームを xts オブジェクトに変換しようとしています。ここに私の入力データフレームqがあります:
結果は次のとおりです。
これは私が考えることができる最も単純な例なので、それが機能しないのは非常にイライラします...どんな助けも大歓迎です!
python - 派生クラスで __coerce__() メソッドを呼び出すとエラーが発生する
私の試行は以下のようでしたが、うまくいきませんでした。
Pythonコマンドラインで次のように入力しました:
結果:
__coerce__()
クラスを派生させずにメソッド
を使用すると、 の結果は にx+y
等しくなりradd called // 32
ます。ただし、派生クラスではエラーが発生します。
助けてください。旧正月、よろしくお願いします。
perl - スカラーからarrayrefへの強制でAoArrayrefs属性を設定するにはどうすればよいですか?
非配列参照を配列参照に強制する配列参照の配列である属性を設定したいと思います。例えば。
[0、[0、0、0]、[1,2,3]]を[[0]、[0、0、0]、[1,2,3]]に
また、強制的に要素をAoAにプッシュまたは設定できるようにしたいと思います。これが私の試みです: