xplain2sqlをGobo compiler and its toolsで作成しようとしています。 geant compile
コマンドを発行した後、私は同様のエラーの多くを得る:STRING_8はis_equalのSTRING_UCに準拠していません
[野次る]クラスSQL_GENERATOR_TSQL65(SQL_GENERATOR、2610,5):タイプ 実引数#1の 'STRING_8は' 'UC_STRING' とタイプに準拠しない 機能UC_STRING 『エラー以上
「クラスで』 `is_equalにおける仮引数のこのコードのthe last lineを参照:
sql_infix_expression (a_left: XPLAIN_EXPRESSION; an_operator: STRING; a_right: XPLAIN_EXPRESSION): STRING
-- SQL expression for multiplication/division, etc.
require
valid_left: a_left /= Void
valid_right: a_right /= Void
operator_not_empty: an_operator /= Void and then not an_operator.is_empty
local
left_value,
right_value: STRING
do
if
an_operator.is_equal (once "+") and then
私は知りませんエッフェル、私はちょうどこのコードをコンパイルしたい。他のプログラミング言語の常識や経験を使って修正できる他のビルドエラーがありましたが、これに対処する方法はわかりません。
これはいくつかのエラーでは機能しましたが、すべてではありませんでした。 'is_equal(..)'を呼び出す 'equal(..)'(標準ライブラリ内)の本体を指すものもあります。 'is_equal(..) 'と同じように' equal(..)'の文字列のみの置き換えがありますか?私はドキュメンテーションでそれを見つけることを試みていますが、運がありません。 –
私はいくつかの 'equal(..)'呼び出しを 'is_equal(..)'に変更して、エラーメッセージがこれらの特定の行やコードによって生成されているかどうかを確認し、 'same_string(..) ) '。これは面倒な作業ですが、うまくいくようです。 –
この質問で私をさらに助けたいと思うかもしれません:https://stackoverflow.com/questions/47045431/getting-stack-trace-from-geant –