subscribeRoomSectionStream method
listen to updates to a room section
Implementation
Stream<bool> subscribeRoomSectionStream(
String key,
String section,
) {
final tmp1 = key;
final tmp5 = section;
var tmp0 = 0;
var tmp2 = 0;
var tmp3 = 0;
var tmp4 = 0;
var tmp6 = 0;
var tmp7 = 0;
var tmp8 = 0;
tmp0 = _box.borrow();
final tmp1_0 = utf8.encode(tmp1);
tmp3 = tmp1_0.length;
final ffi.Pointer<ffi.Uint8> tmp2_0 = _api.__allocate(tmp3 * 1, 1);
final Uint8List tmp2_1 = tmp2_0.asTypedList(tmp3);
tmp2_1.setAll(0, tmp1_0);
tmp2 = tmp2_0.address;
tmp4 = tmp3;
final tmp5_0 = utf8.encode(tmp5);
tmp7 = tmp5_0.length;
final ffi.Pointer<ffi.Uint8> tmp6_0 = _api.__allocate(tmp7 * 1, 1);
final Uint8List tmp6_1 = tmp6_0.asTypedList(tmp7);
tmp6_1.setAll(0, tmp5_0);
tmp6 = tmp6_0.address;
tmp8 = tmp7;
final tmp9 = _api._clientSubscribeRoomSectionStream(
tmp0,
tmp2,
tmp3,
tmp4,
tmp6,
tmp7,
tmp8,
);
final tmp11 = tmp9.arg0;
final tmp12 = tmp9.arg1;
final tmp13 = tmp9.arg2;
final tmp14 = tmp9.arg3;
final tmp15 = tmp9.arg4;
if (tmp11 == 0) {
debugAllocation("handle error", tmp12, tmp13);
final ffi.Pointer<ffi.Uint8> tmp12_0 = ffi.Pointer.fromAddress(tmp12);
final tmp11_0 =
utf8.decode(tmp12_0.asTypedList(tmp13), allowMalformed: true);
if (tmp13 > 0) {
final ffi.Pointer<ffi.Void> tmp12_0;
tmp12_0 = ffi.Pointer.fromAddress(tmp12);
_api.__deallocate(tmp12_0, tmp14, 1);
}
throw tmp11_0;
}
final ffi.Pointer<ffi.Void> tmp15_0 = ffi.Pointer.fromAddress(tmp15);
final tmp15_1 = _Box(
_api, tmp15_0, "__Client_subscribe_room_section_stream_stream_drop");
tmp15_1._finalizer = _api._registerFinalizer(tmp15_1);
final tmp10 = _nativeStream(
tmp15_1, _api.__clientSubscribeRoomSectionStreamStreamPoll);
return tmp10;
}