Xtalの非公式リファレンスです。
組み込みに関しては詳しくないので、組み込みチュートリアルをご覧ください。
Xtalは構造上、ほぼ全てのクラスがAny, Baseを継承しており、全ての継承メソッドを記述するとあまりに同じような記述を繰り返すこととなり、視認性を悪化させることが想定されました。
しかし、それらで定義されているメソッドに関しては、継承先でもそれなりの直行性が維持されています。そのため、特筆すべきことが無い場合は省かせていただきました。
それ以外の継承関係に関しては、なるべく継承元のメソッドも列挙するようにしてあります。
initialize | Xtal実行環境を作成、初期化する |
uninitialize | 現在のXtal実行環境を破棄する |
gc | GCを実行する |
full_gc | 循環参照も検知するGCを実行する |
disable_gc | GCを無効化する |
enable_gc | GCを有効化する |
set_require_source_hook | require_sourceで呼ばれるフック関数を設定する |
compile | 文字列をコンパイルしバイトコードを返す |
compile_file | ファイルをコンパイルしバイトコードを返す??? |
eval_compile | eval用にコンパイルしてバイトコードを返す |
eval | |
load | ファイルをコンパイルして実行する |
require_source | Xtalファイルを要求してバイトコードを返す |
require | Xtalファイルを要求して実行する |
source | ??? |
exec_source | ソースを実行する??? |
compiled_source | ??? |
exec_compiled_source | ??? |
enable | デバッグ機能を有効にする |
disable | デバッグ機能を無効にする |
enable_force | デバッグ機能を強制的に有効にする |
disable_force | デバッグ機能を強制的に無効にする |
is_enabled | デバッグ機能が有効かどうか |
set_line_hook | 一行ごとに呼び出されるフック関数の登録 |
set_call_hook | 関数呼出しごとに呼び出されるフック関数の登録 |
set_return_hook | 関数から抜けるごとに呼び出されるフック関数の登録 |
set_throw_hook | 例外がthrowされるごとに呼び出されるフック関数の登録 |
set_assert_hook | assert失敗ごとに呼び出されるフック関数の登録 |
line_hook | 一行ごとに呼び出されるフック関数 |
call_hook | 関数呼出しごとに呼び出されるフック関数 |
return_hook | 関数から抜けるごとに呼び出されるフック関数 |
throw_hook | 例外がthrowされるごとに呼び出されるフック関数 |
assert_hook | assert失敗ごとに呼び出されるフック関数 |
open | ファイルを開く |
is_directory | 指定パスがディレクトリか否か |
entries | 指定ディレクトリのエントリを列挙するイテレータを返す |
acos | arccos(float) |
asin | arcsin(float) |
atan | arctan(float) |
atan2 | arctan2(float) |
ceil | ceil(float) |
cos | cos(float) |
exp | exp(float) |
floor | floor(float) |
log | log(float) |
pow | pow(float, float) |
sin | sin(float) |
sqrt | sqrt(float) |
tan | tan(float) |
abs | abs(int), abs(float) |
max | max(int, int), max(float, float) |
min | min(int, int), min(float, float) |
random | random() |
random_range | random_range(float, float) |
PI | const float PI |
E | const float E(ネイピア数) |
Any | 全ての基底クラス |
SmartPtr | 参照カウンタ管理のスマートポインタ |
AnyPtr | SmartPtr<Any>の特殊化 |
RefCountingBase | |
Base | |
HaveParentBase | |
HaveParentRefCountingBase |
Null | ヌル | null |
Undefined | 未定義 | undefined |
Int | 整数 | 0 1 |
Float | 浮動小数点数 | 0.0 1.0f |
Bool | 真偽 | true false |
String | 文字列 | “some string” |
Array | 可変長配列 | [0, 1, 2] |
Map | 連想配列 | [“tag1”:0, 2:1] |
Fun | 関数 | fun(){} |
Method | メソッド | method(){} |
Fiber | ファイバー | fiber(){} |
Values | 多値 | (0, 1) |
Lambda | ラムダ | | | |
Iterator | イテレータの便利メソッド提供 | .each or {} |
Iterable | イテレート可能 | |
Class | クラス | class Hoge{} |
Set | セット |
Text | |
Thread | ネイティブスレッド |
Mutex | ミューテックス |
Stream | ストリームの基底クラス |
MemoryStream | メモリストリーム(書き込み可能) |
PointerStream | ポインタストリーム(書き込み不能) |
StringStream | 文字列ストリーム(書き込み不能) |
FileStream | ファイルストリーム(書き込み可能) |
CompressEncoder | 圧縮ストリーム(書き込み専用) |
CompressDecoder | 展開ストリーム(読み込み専用) |
StdinStream | |
StdoutStream | |
StderrStream | |
Lib | Lib |
Global | グローバル |
Exception | 例外 |
Range | 区間 |
IntRange | 整数区間 |
FloatRange | 浮動小数点数区間 |
ChRange | 文字区間 |
Frame | フレーム |
Arguments | 引数 |
XTAL_PREBIND | 継承構造やコンストラクタのバインド |
XTAL_BIND | ネイティブメンバのバインド |
XTAL_BIND2 | |
XTAL_PREBIND_ALIAS | 別名でPREBIND |
XTAL_BIND_ALIAS | 別名でBIND |
Xdef_method | メンバ関数のメソッドへのバインド |
Xdef_fun | 関数のクラスメソッドへのバインド |
Xdef_getter | getterをバインド |
Xdef_setter | setterをバインド |
Xdef_var | getter/setterをバインド |
Xparam | デフォルト引数を設定 |
Xdef | AnyPtrをバインド |
Xdef2 | AnyPtrをセカンダリキーとともにバインド |
Xdef_const | クラス定数をバインド |
Xdef_ctor | 0-13引数のコンストラクタをバインド |
Xtal PEG です。
正規表現の代わりに入っています。使う際は以下も参照してください。