ファイルをつなげる
他ファイルの関数や構造体を使う
以下のようなファイル構成のときを例に説明します
src
├── SayHello.wapl
└── main.wapl
ファイル:SayHello.waplにある以下の関数をファイル:main.waplで呼びたいです。
fn Hello(){
println("HELLO!!!!!");
}
こんな時にはuseキーワードを使ってつなげたいファイルのパスをしていします。
ファイル:main.wapl
use "./src/SayHello.wapl"
fn main():i32{
Hello();
return 0s;
}
パスは文字列リテラルと同じでダブルクォーテーションで囲んで書きます。
同様に構造体も持ち込むことができます。
以下のようなファイル構成のときを例に説明します。
src
├── Complex.wapl
└── main.wapl
ファイル:Complex.wapl
struct Complex{
f64 re,
f64 im
}
fn Complex_new(f64 re,f64 im):Complex{
#=(cplx, _, Complex);
=(.(cplx,re), re);
=(.(cplx,im), im);
return cplx;
}
fn Complex_show(Complex c){
println(format("c = %g + %gi",.(c,re),.(c,im)));
}
この複素数の構造体をファイル:main.waplで使います。
use "./src/Complex.wapl"
fn main():i32{
#=(c, Complex_new(1.0,2.0), Complex);
Complex_show(c);
return 0s;
}
このようにして複数ファイルで開発をすることができます。