示例#1
0
SystemSTD::SystemSTD() : Module("System") {

	static_field("version", Type::INTEGER, (void*) &System_version);

	static_field("operations", Type::INTEGER, (void*) &System_operations);

	static_field("time", Type::LONG, (void*) &System_time);
	static_field("milliTime", Type::LONG, (void*) &System_millitime);
	static_field("microTime", Type::LONG, (void*) &System_microtime);
	static_field("nanoTime", Type::LONG, (void*) &System_nanotime);

	static_method("print", {
		{Type::VOID, {Type::MPZ}, (void*) &System_print_mpz, Method::NATIVE},
		{Type::VOID, {Type::MPZ_TMP}, (void*) &System_print_mpz_tmp, Method::NATIVE},
		{Type::VOID, {Type::INTEGER}, (void*) &System_print_int, Method::NATIVE},
		{Type::VOID, {Type::LONG}, (void*) &System_print_long, Method::NATIVE},
		{Type::VOID, {Type::BOOLEAN}, (void*) &System_print_bool, Method::NATIVE},
		{Type::VOID, {Type::REAL}, (void*) &System_print_float, Method::NATIVE},
		{Type::VOID, {Type::POINTER}, (void*) &System_print, Method::NATIVE}
	});
}
示例#2
0
文件: p3.cpp 项目: aaasz/SHP
 bool test() {
   return data_member + instance_method() < static_method();
 }
SB_META_BEGIN_KLASS_BIND(Sandbox::TileMapLayer)
SB_META_CONSTRUCTOR((size_t,size_t))
SB_META_METHOD(GetAt)
SB_META_METHOD(SetAt)
SB_META_PROPERTY_RO(Width, GetWidth)
SB_META_PROPERTY_RO(Height, GetHeight)
SB_META_END_KLASS_BIND()

SB_META_BEGIN_KLASS_BIND(Sandbox::TileMap)
SB_META_CONSTRUCTOR((size_t,size_t))
SB_META_METHOD(GetLayer)
SB_META_METHOD(SetLayer)
SB_META_PROPERTY_RO(Width, GetWidth)
SB_META_PROPERTY_RO(Height, GetHeight)
bind( static_method( "LoadTileMapTMX" , &Sandbox::LoadTileMapTMX ) );
SB_META_END_KLASS_BIND()

struct UTF8 {
    static  sb::string GetChar(const char* src) {
        Sandbox::UTF32Char ch = 0;
        const char* next = Sandbox::get_char(src, ch);
        sb::string res;
        res.assign(src,next);
        return res;
    }
    static GHL::UInt32 GetCode(const char* src) {
        Sandbox::UTF32Char ch = 0;
        Sandbox::get_char(src, ch);
        return ch;
    }