問題タブ [preconditions]
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.
ada - 前提条件は GNAT では機能しませんか?
私はまだAdaに慣れていないので、前提条件の使用を誤解していると思います.GNAT RMを見ると、実行時にチェックが実行されていないようです。また、ここでの前提条件の GNAT RM は、前提条件が満たされない場合にスローされる例外を指定しません。
ここに私が試しているコードがあります:
私の理解が正しければ、このプログラムは、Put_Line プロシージャを呼び出す前に、特定されていない例外を発生させるはずです。しかし、プログラムを実行すると、 Precondition に違反する無効な Size 引数でプロシージャが呼び出されることがわかりますDestination'Size ≥ Size ≤ Source'Size
。代わりに、if
実際にエラーをキャッチするステートメントを配置し、例外 Constraint_Error を発生させて正常に保つ必要があります。
追加などのバリエーションを試しましpragma Precondition ( ... )
たが、それもうまくいきません。
with Pre =>
奇妙なことの 1 つは、ジェネリック プロシージャ本体/定義で句を繰り返すと、プログラムが実際にコンパイルされることです。これは通常、プロシージャに対してこれを許可せず、エラーを発生させます (つまり、事前条件は、定義ではなく正式な宣言にのみ含める必要があります)。この場合、一般的な手順は例外ですか?
また、ジェネリック手続き宣言に use 句を追加できることにも驚きました。これにより、正式なパラメーター名 (非常に長いもの) の定義が容易になりますが、これは通常/通常のプロシージャー宣言では実行できないため、バグのように見えます。
PS 私は、学習目的で Ada 言語で、C からの memcpy() の可能な限り最も近い模倣を実装したいと考えていました。
java - Javaの事前条件と事後条件?
たとえば、次のコードがあります。
これらの用語が正確に何を意味するのか混乱していますか?上記のコードは私が考えているものですが、誰かが私の理論で正しい方向に向けることができますか?
optimization - ローカル変数を使用した Clojure 前提条件
実際の関数本体で使用できるように、前提条件で実行された計算の結果を格納する方法はありますか。
これはひどいです (コストのかかる計算が 2 回実行されます)。
これらに沿って何かをしたいと思っています。しかし、これはうまくいきません。
java - Guava 前提条件によるカスタム例外
非常に単純な質問です。プロジェクトで com.google.common.base.Preconditions をよく使用して、引数とパラメーターを検証します。次に例を示します。
Preconditions.checkNotNull(parameter, "message");
Preconditions.checkArgument(parameter > 0, "message");
このコードは、IllegalArgumentException または NPE を生成する可能性があります。しかし、多くの場合、独自の例外をスローする必要があります。このライブラリでどうすればできますか?それとも、別の人にアドバイスできますか?前もって感謝します!
更新: 独自の単純なユーティリティ クラスを作成できることは理解していますが、既製のソリューションを見つけることに興味があります。誰かがそれが可能であることを知っているなら、私に知らせてください。
sql - ページをリダイレクトするための SQL 前提条件を備えた Joomla フォーム拡張機能/コンポーネント
バックエンド テーブルのクエリを実行できる Joomla 拡張機能/コンポーネントがあるかどうかを知りたいです。
クエリの結果が「1」の場合、ユーザーが送信できるフォームを表示し、結果がバックエンドに返されます。ユーザーは XYZ ページにリダイレクトされます
クエリの結果が「0」の場合、ユーザーは XYZ ページに直接リダイレクトされました
Fabrik コンポーネントを試しましたが、残念ながら「フォーム」に前提条件はありません。
前もって感謝します!
java - Java - メソッドの前提条件と事後条件の適用
私の質問は短いです。メソッドの事前条件と事後条件はコンパイラによって適用されますか?
clojure - clojure: 関数内で定義された var が前提条件を破っています
私はこの機能を持っています:
前提条件が機能していません。どういうわけか、vars tipos-transicoes-pes および tipos-estados-peso が前提条件コードにバグを作成しています。これらの変数を関数の外に置いて機能させることができることを知っています。しかし、これらの定義を関数内に保持したいと思います。どうやってやるの?
packages - パッケージ専用の Ada アスペクト
私が世界で最も愚かなリングバッファを持っているとしましょう。
私のコードはひどいので、これを誤用しないように事前条件と事後条件を追加したいと思います。そこで、Push の実装を次のように変更します。
ただし、実装ではなく、プロシージャの宣言にアスペクト定義を配置する必要があるため、コンパイル エラーが発生します。
事は、これはパッケージです。私の宣言は公開されています。前提条件が依存している値は、宣言からは見えないパッケージ本体に属しています。アスペクト定義を宣言に入れるには、コードをリファクタリングして実装の詳細をパッケージの公開部分 (この場合はreadptr
とwriteptr
) に公開する必要があります。そして、私はそれをしたくありません。
私はこれを回避するいくつかの方法を考えることができます.callの実装を、実際に前提条件を持つ本体でのみ定義されPush()
たプライベートPushImpl()
プロシージャにするなどです...しかし、それは恐ろしいことです。これを行う正しい方法は何ですか?