👋
python typegurad の decorator を ifdef 的に扱いたいメモ
typeguard でクラスや関数の引数の実行時型チェックしたい
@typechecked
class Myclass:
...
のように.
しかし typegurad が入っていない素の Python 環境も考慮したい(実行時型チェックなし)
python だとデコレータは C みたいに ifdef 的なやり方ができない.
if tyeguard_available:
@typechecked
class Myclass:
...
はエラーとなる.
とりあえずはダミーのデコレータ定義で対応でしょうか.
try:
from typeguard import typechecked
except:
def typechecked(cls):
return cls
Discussion