예제 #1
0
파일: bplist.c 프로젝트: 1060460048/tbox
tb_object_bplist_reader_func_t tb_object_bplist_reader_func(tb_size_t type)
{
    // the reader
    tb_object_reader_t* reader = tb_object_reader_get(TB_OBJECT_FORMAT_BPLIST);
    tb_assert_and_check_return_val(reader && reader->hooker, tb_null);

    // the func
    return (tb_object_bplist_reader_func_t)tb_hash_get(reader->hooker, (tb_pointer_t)type);
}
예제 #2
0
파일: json.c 프로젝트: luxuan/tbox
tb_object_json_reader_func_t tb_object_json_reader_func(tb_char_t type)
{
    // check
    tb_assert_and_check_return_val(type, tb_null);

    // the reader
    tb_object_reader_t* reader = tb_object_reader_get(TB_OBJECT_FORMAT_JSON);
    tb_assert_and_check_return_val(reader && reader->hooker, tb_null);
 
    // the func
    return (tb_object_json_reader_func_t)tb_hash_map_get(reader->hooker, (tb_pointer_t)(tb_size_t)type);
}
예제 #3
0
파일: xplist.c 프로젝트: AlexShiLucky/tbox
tb_object_xplist_reader_func_t tb_object_xplist_reader_func(tb_char_t const* type)
{
    // check
    tb_assert_and_check_return_val(type, tb_null);

    // the reader
    tb_object_reader_t* reader = tb_object_reader_get(TB_OBJECT_FORMAT_XPLIST);
    tb_assert_and_check_return_val(reader && reader->hooker, tb_null);

    // the func
    return (tb_object_xplist_reader_func_t)tb_hash_map_get(reader->hooker, type);
}
예제 #4
0
파일: json.c 프로젝트: luxuan/tbox
tb_bool_t tb_object_json_reader_hook(tb_char_t type, tb_object_json_reader_func_t func)
{
    // check
    tb_assert_and_check_return_val(type && func, tb_false);

    // the reader
    tb_object_reader_t* reader = tb_object_reader_get(TB_OBJECT_FORMAT_JSON);
    tb_assert_and_check_return_val(reader && reader->hooker, tb_false);

    // hook it
    tb_hash_map_insert(reader->hooker, (tb_pointer_t)(tb_size_t)type, func);

    // ok
    return tb_true;
}
예제 #5
0
파일: xplist.c 프로젝트: AlexShiLucky/tbox
tb_bool_t tb_object_xplist_reader_hook(tb_char_t const* type, tb_object_xplist_reader_func_t func)
{
    // check
    tb_assert_and_check_return_val(type && func, tb_false);

    // the reader
    tb_object_reader_t* reader = tb_object_reader_get(TB_OBJECT_FORMAT_XPLIST);
    tb_assert_and_check_return_val(reader && reader->hooker, tb_false);

    // hook it
    tb_hash_map_insert(reader->hooker, type, func);

    // ok
    return tb_true;
}
예제 #6
0
파일: bplist.c 프로젝트: 1060460048/tbox
tb_bool_t tb_object_bplist_reader_hook(tb_size_t type, tb_object_bplist_reader_func_t func)
{
    // check
    tb_assert_and_check_return_val(func, tb_false);

    // the reader
    tb_object_reader_t* reader = tb_object_reader_get(TB_OBJECT_FORMAT_BPLIST);
    tb_assert_and_check_return_val(reader && reader->hooker, tb_false);

    // hook it
    tb_hash_set(reader->hooker, (tb_pointer_t)type, func);

    // ok
    return tb_true;
}