コンテンツにスキップ

変数

Cライブラリによって公開される変数は、グローバル変数のような宣言を使ってlib宣言の中で宣言できます。

lib C
  $errno : Int32
end

そして、それらを取得および設定できます。

C.errno # => some value
C.errno = 0
C.errno # => 0

変数はアノテーションでスレッドローカルとしてマークできます。

lib C
  @[ThreadLocal]
  $errno : Int32
end

外部変数の型に使用される表記法については、型文法を参照してください。