feat(sdk): Update the FFI layer to latest commits.

This commit is contained in:
Ivan Enderlin
2023-04-26 16:08:06 +02:00
parent 4b70407bcd
commit 576fac99db
2 changed files with 16 additions and 18 deletions

View File

@@ -1,4 +1,7 @@
use std::sync::{Arc, RwLock};
use std::{
fmt,
sync::{Arc, RwLock},
};
use anyhow::{anyhow, Context};
use eyeball::shared::Observable as SharedObservable;
@@ -118,6 +121,12 @@ pub struct Client {
pub(crate) sliding_sync_reset_broadcast_tx: Arc<SharedObservable<()>>,
}
impl fmt::Debug for Client {
fn fmt(&self, formatter: &mut fmt::Formatter<'_>) -> fmt::Result {
formatter.debug_struct("Client").field("client", &self.client).finish_non_exhaustive()
}
}
impl Client {
pub fn new(client: MatrixClient) -> Self {
let session_verification_controller: Arc<

View File

@@ -485,11 +485,6 @@ impl SlidingSyncListBuilder {
Arc::new(builder)
}
pub fn build(self: Arc<Self>) -> Result<Arc<SlidingSyncList>, ClientError> {
let builder = unwrap_or_clone_arc(self);
Ok(Arc::new(builder.inner.build()?.into()))
}
pub fn sort(self: Arc<Self>, sort: Vec<String>) -> Arc<Self> {
let mut builder = unwrap_or_clone_arc(self);
builder.inner = builder.inner.sort(sort);
@@ -565,7 +560,7 @@ impl SlidingSyncListBuilder {
}
}
#[derive(Clone, uniffi::Object)]
#[derive(uniffi::Object)]
pub struct SlidingSyncList {
inner: matrix_sdk::SlidingSyncList,
}
@@ -745,13 +740,8 @@ impl SlidingSync {
.collect())
}
#[allow(clippy::significant_drop_in_scrutinee)]
pub fn get_list(&self, name: String) -> Option<Arc<SlidingSyncList>> {
self.inner.list(&name).map(|inner| Arc::new(SlidingSyncList { inner }))
}
pub fn add_list(&self, list: Arc<SlidingSyncList>) -> Option<Arc<SlidingSyncList>> {
self.inner.add_list(list.inner.clone()).map(|inner| Arc::new(SlidingSyncList { inner }))
pub fn add_list(&self, list_builder: Arc<SlidingSyncListBuilder>) {
self.inner.add_list(unwrap_or_clone_arc(list_builder).inner).unwrap();
}
pub fn add_common_extensions(&self) {
@@ -798,7 +788,7 @@ impl SlidingSync {
}
}
#[derive(Clone, uniffi::Object)]
#[derive(Debug, Clone, uniffi::Object)]
pub struct SlidingSyncBuilder {
inner: MatrixSlidingSyncBuilder,
client: Client,
@@ -818,10 +808,9 @@ impl SlidingSyncBuilder {
Arc::new(builder)
}
pub fn add_list(self: Arc<Self>, v: Arc<SlidingSyncList>) -> Arc<Self> {
pub fn add_list(self: Arc<Self>, list_builder: Arc<SlidingSyncListBuilder>) -> Arc<Self> {
let mut builder = unwrap_or_clone_arc(self);
let list = unwrap_or_clone_arc(v);
builder.inner = builder.inner.add_list(list.inner);
builder.inner = builder.inner.add_list(unwrap_or_clone_arc(list_builder).inner).unwrap();
Arc::new(builder)
}