====== XTAL_BIND_ALIAS ====== XTAL_BIND_ALIAS(ClassName, Name); [[XTAL_BIND]]のALIAS版で、違いや効果などは[[XTAL_PREBIND]]と[[XTAL_PREBIND_ALIAS]]の比較と同じです。C++クラス//ClassName//のメンバを//Name//という名前のクラスのメンバとしてバインドします。 ===== Example ===== ==== C++ ==== class Foo{ public: Foo(){ StringPtr("foo constructed")->p(); } void print(){ StringPtr("foo")->p(); } }; XTAL_PREBIND_ALIAS(Foo, Bar){ Xdef_ctor0(); } XTAL_BIND_ALIAS(Foo, Bar){ Xdef_method(print); } void exec_xtal(){ xtal::global()->def(Xid(Bar), xtal::cpp_class()); Xsrc(( bar : Bar(); bar.p; bar.print; ))->call(); } ==== Output ==== foo constructed <(instance of lib::builtin::global::Foo)> foo