Nimrod を発見したばかりで、基本的な質問があります (ドキュメントで答えが見つかりませんでした)。
ビット演算をどのように使用しますか? x が int として定義されている次のコードがあります。
if x and 1:
これはコンパイルされません:
Error: type mismatch: got (range 0..1(int)) but expected 'bool'
そして、私が試してみると:
if and(x, 1)
私は得る
Error: type mismatch: got (tuple[int, int])
but expected one of:
system.and(x: int16, y: int16): int16
system.and(x: int64, y: int64): int64
system.and(x: int32, y: int32): int32
system.and(x: int, y: int): int
system.and(x: bool, y: bool): bool
system.and(x: int8, y: int8): int8
トリックは何ですか?