Python クラスを Genieにリファクタリングしようとしていますが、エラーの処理方法に行き詰まっています。いくつかの指針をいただければ幸いです。
私が正しく理解していれば、Genie でエラーを処理する方法は Try...except ブロックを使用していますが、次のタイプのエラー処理をこのパラダイムに変換する方法は次のとおりです。
# Enable dictionary/list-style access to options and arguments.
def __getitem__(self, key):
if isinstance(key, int):
if key < len(self.arguments):
return self.arguments[key]
else:
raise ArgParserError(
"positional argument index [%s] is out of bounds" % key
)
else:
option = self._get_opt(key)
return option.value
私が今いるコードは(Genieで)次のようになります。
def getitem (key:int):string
if key.is_int()
if key < len(_arguments)
return _arguments[key]
else
raise ArgParserError(
"positional argument index [%s] is out of bounds", key
)
else
var option = _get_opt(key)
return option.value
これはダミー コードです。私は問題をモデル化しているだけであり、そのままではコンパイルできないことを認識しています。Python から '''raise''' コマンドを変換する方法についてのポインタを探しているだけです。