ビルトイン

rev20210114
執筆中

グローバル関数

print

fn print(s: string)

文字列を標準出力に出力します。

println(string)

fn println(s: string)

文字列を標準出力に改行とともに出力します。

eprint

fn eprint(s: string)

文字列を標準エラー出力に出力します。

eprintln

fn eprintln(s: string)

文字列を標準エラー出力に改行とともに出力します。

isatty

fn isatty(fd: int): bool

指定されたファイルディスクリプタが tty か判別します。

input

fn input(prompt: string): string

プロンプトを表示し、標準入力から入力を受け取ります。

input_tty

fn input_tty(prompt: string): string

プロンプトを表示し、tty から入力を受け取ります。

range

fn range(begin: int, end: int) |> int

指定された範囲の連続した数値のシーケンスを返します。

var v: int
for i in range(1, 4) {
  v += i
}
assert(v == 3)

count

fn ...any |> count() |> int

シーケンスの要素数を返します。

sequence

fn sequence(elements: ...any) |> ...any

引数からシーケンスを生成します。

string

fn ...string |> head(n: int) |> ...string

文字列シーケンスの先頭から、指定された個数の文字列を取り出します。

first

fn ...string |> first() |> string

文字列シーケンスの最初の要素を返します。

tail

fn ...string |> tail(n: int) |> ...string

文字列シーケンスの末尾から、指定された個数の文字列を取り出します。

last

fn ...string |> last() |> string

文字列シーケンスの最後の要素を返します。

join

fn ...string |> join(sep: string) |> string

文字列シーケンスを sep で結合した文字列を返します。

[]string#join

fn (ss: []string) join(sep: string): string

文字列配列を sep で結合した文字列を返します。

string#len

fn (s: string) len(): int

文字列の長さを返します。

string#substr

fn (s: string) substr(i: int, n: int): string

インデックス i から n 文字の部分文字列を返します。n がマイナス値の場合、i 以降の全体を返します。

string#contains

fn (s: string) contains(substr: string): bool

指定された部分文字列が文字列内に含まれる場合 true を返します。

string#index

fn (s: string) index(t: string): int

指定された部分文字列が文字列内に含まれる場合、その最初のインデックスを返します。見つからなかった場合は -1 を返します。

string#last_index

fn (s: string) last_index(t: string): int

指定された部分文字列が文字列内に含まれる場合、その最後のインデックスを返します。見つからなかった場合は -1 を返します。

string#starts_with

fn (s: string) starts_with(ss: string): bool

文字列が指定された文字列から開始する場合に true を返します。

string#ends_with

fn (s: string) ends_with(ss: string): bool

文字列が指定された文字列で終了する場合に true を返します。

string#trim_prfix

fn (s: string) trim_prefix(prefix: string): string

文字列の先頭から部分文字列を削除した文字列を返します。

string#trim_suffix

fn (s: string) trim_suffix(suffix: string): string

文字列の末尾から部分文字列を削除した文字列を返します。

string#trim

fn (s: string) trim(): string

文字列の先頭と末尾から空白を削除した文字列を返します。

string#trim_start

fn (s: string) trim_start(): string

文字列の先頭から空白を削除した文字列を返します。

string#trim_end

fn (s: string) trim_end(): string

文字列の先頭から空白を削除した文字列を返します。

lines

fn string |> lines() |> ...string

文字列を行ごとのシーケンスに変換します。

string#lines

fn (s: string) lines() |> ...string

文字列を行ごとのシーケンスに変換します。

replace

fn ...string |> replace(old: string, new: string) |> ...string

文字列シーケンスの各要素を正規表現(ERE)で置換します。

string#replace

fn (s: string) replace(old: string, new: string): string

文字列を正規表現(ERE)で置換します。

filter

fn ...string |> filter(pat: string) |> ...string

文字列シーケンスから正規表現(ERE)にマッチする要素を抜き出します。

Array

[]any#len

fn (arr: []any) len(): int

配列の要素数を返します。

UNIX commands

  • basename(string): string
  • ...string |> cat(...string) |> ...string
  • cd(string)
  • cp(...string)
  • cp_r(...string)
  • dirname(string): string
  • exit(int)
  • ls(...string) |> ...string
  • mkdir(...string)
  • mkdir_p(...string)
  • pwd(): string
  • rm(...string)
  • rm_r(...string)
  • seq(int) |> ...int
  • touch(...string)
  • which(string): string

Copyright © zakuro <z@kuro.red>

Design by zakuro & Yuki Amane (Pianoforte)