[fractal] Slightly shorten the command chain in backend_loop
- From: Christopher Davis <christopherdavis src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [fractal] Slightly shorten the command chain in backend_loop
- Date: Mon, 28 Oct 2019 02:34:35 +0000 (UTC)
commit 531790b67cf4540b7d5c15ac0b4f93c025c81189
Author: Julian Hofer <julian public protonmail com>
Date: Sun Oct 27 23:41:28 2019 +0100
Slightly shorten the command chain in backend_loop
Exchange 'loop' with 'while let Ok(recv)' in order to get rid
of the 'Ok's at the beginning of nearly every pattern
fractal-gtk/src/app/backend_loop.rs | 128 +++++++++++++++++-------------------
1 file changed, 61 insertions(+), 67 deletions(-)
---
diff --git a/fractal-gtk/src/app/backend_loop.rs b/fractal-gtk/src/app/backend_loop.rs
index 9ef327dc..dd0bc2d7 100644
--- a/fractal-gtk/src/app/backend_loop.rs
+++ b/fractal-gtk/src/app/backend_loop.rs
@@ -16,92 +16,87 @@ use std::sync::mpsc::RecvError;
pub fn backend_loop(rx: Receiver<BKResponse>) {
thread::spawn(move || {
- loop {
- let recv = rx.recv();
-
+ while let Ok(recv) = rx.recv() {
match recv {
- Err(RecvError) => {
- break;
- }
- Ok(BKResponse::ShutDown) => {
+ BKResponse::ShutDown => {
break;
}
- Ok(BKResponse::Token(uid, tk, dev)) => {
+ BKResponse::Token(uid, tk, dev) => {
APPOP!(bk_login, (uid, tk, dev));
}
- Ok(BKResponse::Logout(Ok(_))) => {
+ BKResponse::Logout(Ok(_)) => {
APPOP!(bk_logout);
}
- Ok(BKResponse::Name(Ok(username))) => {
+ BKResponse::Name(Ok(username)) => {
let u = Some(username);
APPOP!(set_username, (u));
}
- Ok(BKResponse::GetThreePID(Ok(list))) => {
+ BKResponse::GetThreePID(Ok(list)) => {
let l = Some(list);
APPOP!(set_three_pid, (l));
}
- Ok(BKResponse::GetTokenEmail(Ok((sid, secret)))) => {
+ BKResponse::GetTokenEmail(Ok((sid, secret))) => {
let sid = Some(sid);
let secret = Some(secret);
APPOP!(get_token_email, (sid, secret));
}
- Ok(BKResponse::GetTokenPhone(Ok((sid, secret)))) => {
+ BKResponse::GetTokenPhone(Ok((sid, secret))) => {
let sid = Some(sid);
let secret = Some(secret);
APPOP!(get_token_phone, (sid, secret));
}
- Ok(BKResponse::GetTokenEmail(Err(Error::TokenUsed))) => {
+ BKResponse::GetTokenEmail(Err(Error::TokenUsed)) => {
let error = i18n("Email is already in use");
APPOP!(show_error_dialog_in_settings, (error));
}
- Ok(BKResponse::GetTokenEmail(Err(Error::Denied))) => {
+ BKResponse::GetTokenEmail(Err(Error::Denied)) => {
let error = i18n("Please enter a valid email adress.");
APPOP!(show_error_dialog_in_settings, (error));
}
- Ok(BKResponse::GetTokenPhone(Err(Error::TokenUsed))) => {
+ BKResponse::GetTokenPhone(Err(Error::TokenUsed)) => {
let error = i18n("Phone number is already in use");
APPOP!(show_error_dialog_in_settings, (error));
}
- Ok(BKResponse::GetTokenPhone(Err(Error::Denied))) => {
+ BKResponse::GetTokenPhone(Err(Error::Denied)) => {
let error = i18n(
"Please enter your phone number in the format: \n + your country code and your phone
number.",
);
APPOP!(show_error_dialog_in_settings, (error));
}
- Ok(BKResponse::SubmitPhoneToken(Ok((sid, secret)))) => {
+ BKResponse::SubmitPhoneToken(Ok((sid, secret))) => {
let secret = Some(secret);
APPOP!(valid_phone_token, (sid, secret));
}
- Ok(BKResponse::AddThreePID(Ok(_))) => {
+ BKResponse::AddThreePID(Ok(_)) => {
APPOP!(added_three_pid);
}
- Ok(BKResponse::DeleteThreePID(Ok(_))) => {
+ BKResponse::DeleteThreePID(Ok(_)) => {
APPOP!(get_three_pid);
}
- Ok(BKResponse::ChangePassword(Ok(_))) => {
+ BKResponse::ChangePassword(Ok(_)) => {
APPOP!(password_changed);
}
- Ok(BKResponse::SetUserName(Ok(username))) => {
+ BKResponse::SetUserName(Ok(username)) => {
let u = Some(username);
APPOP!(show_new_username, (u));
}
- Ok(BKResponse::AccountDestruction(Ok(_))) => {
+ BKResponse::AccountDestruction(Ok(_)) => {
APPOP!(account_destruction_logoff);
}
- Ok(BKResponse::Avatar(Ok(path))) => {
+ BKResponse::Avatar(Ok(path)) => {
let av = Some(path);
APPOP!(set_avatar, (av));
}
- Ok(BKResponse::SetUserAvatar(Ok(path))) => {
+ BKResponse::SetUserAvatar(Ok(path)) => {
let av = Some(path);
APPOP!(show_new_avatar, (av));
}
- Ok(BKResponse::Sync(Ok(since))) => {
+ BKResponse::Sync(Ok(since)) => {
info!("SYNC");
let s = Some(since);
APPOP!(synced, (s));
}
- Ok(BKResponse::Rooms(rooms, default)) => {
+ BKResponse::Rooms(rooms, default) => {
let clear_room_list = true;
APPOP!(set_rooms, (rooms, clear_room_list));
// Open the newly joined room
@@ -110,104 +105,104 @@ pub fn backend_loop(rx: Receiver<BKResponse>) {
APPOP!(set_active_room_by_id, (room_id));
}
}
- Ok(BKResponse::UpdateRooms(rooms)) => {
+ BKResponse::UpdateRooms(rooms) => {
let clear_room_list = false;
APPOP!(set_rooms, (rooms, clear_room_list));
}
- Ok(BKResponse::RoomDetail(Ok((room, key, value)))) => {
+ BKResponse::RoomDetail(Ok((room, key, value))) => {
let v = Some(value);
APPOP!(set_room_detail, (room, key, v));
}
- Ok(BKResponse::RoomAvatar(Ok((room, avatar)))) => {
+ BKResponse::RoomAvatar(Ok((room, avatar))) => {
APPOP!(set_room_avatar, (room, avatar));
}
- Ok(BKResponse::RoomMembers(Ok((room, members)))) => {
+ BKResponse::RoomMembers(Ok((room, members))) => {
APPOP!(set_room_members, (room, members));
}
- Ok(BKResponse::RoomMessages(msgs)) => {
+ BKResponse::RoomMessages(msgs) => {
APPOP!(show_room_messages, (msgs));
}
- Ok(BKResponse::RoomMessagesTo(Ok((msgs, room, prev_batch)))) => {
+ BKResponse::RoomMessagesTo(Ok((msgs, room, prev_batch))) => {
APPOP!(show_room_messages_top, (msgs, room, prev_batch));
}
- Ok(BKResponse::SentMsg(Ok((txid, evid)))) => {
+ BKResponse::SentMsg(Ok((txid, evid))) => {
APPOP!(msg_sent, (txid, evid));
let initial = false;
APPOP!(sync, (initial));
}
- Ok(BKResponse::DirectoryProtocols(Ok(protocols))) => {
+ BKResponse::DirectoryProtocols(Ok(protocols)) => {
APPOP!(set_protocols, (protocols));
}
- Ok(BKResponse::DirectorySearch(Ok(rooms))) => {
+ BKResponse::DirectorySearch(Ok(rooms)) => {
APPOP!(append_directory_rooms, (rooms));
}
- Ok(BKResponse::JoinRoom(Ok(_))) => {
+ BKResponse::JoinRoom(Ok(_)) => {
APPOP!(reload_rooms);
}
- Ok(BKResponse::LeaveRoom(Ok(_))) => {}
- Ok(BKResponse::SetRoomName(Ok(_))) => {
+ BKResponse::LeaveRoom(Ok(_)) => {}
+ BKResponse::SetRoomName(Ok(_)) => {
APPOP!(show_new_room_name);
}
- Ok(BKResponse::SetRoomTopic(Ok(_))) => {
+ BKResponse::SetRoomTopic(Ok(_)) => {
APPOP!(show_new_room_topic);
}
- Ok(BKResponse::SetRoomAvatar(Ok(_))) => {
+ BKResponse::SetRoomAvatar(Ok(_)) => {
APPOP!(show_new_room_avatar);
}
- Ok(BKResponse::MarkedAsRead(Ok((r, _)))) => {
+ BKResponse::MarkedAsRead(Ok((r, _))) => {
APPOP!(clear_room_notifications, (r));
}
- Ok(BKResponse::RoomNotifications(r, n, h)) => {
+ BKResponse::RoomNotifications(r, n, h) => {
APPOP!(set_room_notifications, (r, n, h));
}
- Ok(BKResponse::RoomName(roomid, name)) => {
+ BKResponse::RoomName(roomid, name) => {
let n = Some(name);
APPOP!(room_name_change, (roomid, n));
}
- Ok(BKResponse::RoomTopic(roomid, topic)) => {
+ BKResponse::RoomTopic(roomid, topic) => {
let t = Some(topic);
APPOP!(room_topic_change, (roomid, t));
}
- Ok(BKResponse::NewRoomAvatar(roomid)) => {
+ BKResponse::NewRoomAvatar(roomid) => {
APPOP!(new_room_avatar, (roomid));
}
- Ok(BKResponse::RoomMemberEvent(ev)) => {
+ BKResponse::RoomMemberEvent(ev) => {
APPOP!(room_member_event, (ev));
}
- Ok(BKResponse::Media(Ok(fname))) => {
+ BKResponse::Media(Ok(fname)) => {
Command::new("xdg-open")
.arg(&fname)
.spawn()
.expect("failed to execute process");
}
- Ok(BKResponse::AttachedFile(Ok(msg))) => {
+ BKResponse::AttachedFile(Ok(msg)) => {
APPOP!(attached_file, (msg));
}
- Ok(BKResponse::NewRoom(Ok(r), internal_id)) => {
+ BKResponse::NewRoom(Ok(r), internal_id) => {
let id = Some(internal_id);
APPOP!(new_room, (r, id));
}
- Ok(BKResponse::AddedToFav(Ok((r, tofav)))) => {
+ BKResponse::AddedToFav(Ok((r, tofav))) => {
APPOP!(added_to_fav, (r, tofav));
}
- Ok(BKResponse::UserSearch(Ok(users))) => {
+ BKResponse::UserSearch(Ok(users)) => {
APPOP!(user_search_finished, (users));
}
// errors
- Ok(BKResponse::AccountDestruction(Err(err))) => {
+ BKResponse::AccountDestruction(Err(err)) => {
let error = i18n("Couldn’t delete the account");
error!("{:?}", err);
APPOP!(show_error_dialog_in_settings, (error));
}
- Ok(BKResponse::ChangePassword(Err(err))) => {
+ BKResponse::ChangePassword(Err(err)) => {
let error = i18n("Couldn’t change the password");
error!("{:?}", err);
APPOP!(show_password_error_dialog, (error));
}
- Ok(BKResponse::GetThreePID(Err(_))) => {
+ BKResponse::GetThreePID(Err(_)) => {
let error = i18n("Sorry, account settings can’t be loaded.");
APPOP!(show_load_settings_error_dialog, (error));
let ctx = glib::MainContext::default();
@@ -215,17 +210,17 @@ pub fn backend_loop(rx: Receiver<BKResponse>) {
activate_action("app", "back");
})
}
- Ok(BKResponse::GetTokenEmail(Err(err))) => {
+ BKResponse::GetTokenEmail(Err(err)) => {
let error = i18n("Couldn’t add the email address.");
error!("{:?}", err);
APPOP!(show_error_dialog_in_settings, (error));
}
- Ok(BKResponse::GetTokenPhone(Err(err))) => {
+ BKResponse::GetTokenPhone(Err(err)) => {
let error = i18n("Couldn’t add the phone number.");
error!("{:?}", err);
APPOP!(show_error_dialog_in_settings, (error));
}
- Ok(BKResponse::NewRoom(Err(err), internal_id)) => {
+ BKResponse::NewRoom(Err(err), internal_id) => {
error!("{:?}", err);
let error = i18n("Can’t create the room, try again");
@@ -234,25 +229,25 @@ pub fn backend_loop(rx: Receiver<BKResponse>) {
APPOP!(show_error, (error));
APPOP!(set_state, (state));
}
- Ok(BKResponse::JoinRoom(Err(err))) => {
+ BKResponse::JoinRoom(Err(err)) => {
error!("{:?}", err);
let error = format!("{}", i18n("Can’t join the room, try again."));
let state = AppState::NoRoom;
APPOP!(show_error, (error));
APPOP!(set_state, (state));
}
- Ok(BKResponse::LoginError(_)) => {
+ BKResponse::LoginError(_) => {
let error = i18n("Can’t login, try again");
let st = AppState::Login;
APPOP!(show_error, (error));
APPOP!(logout);
APPOP!(set_state, (st));
}
- Ok(BKResponse::AttachedFile(Err(err))) => {
+ BKResponse::AttachedFile(Err(err)) => {
error!("attaching {:?}: retrying send", err);
APPOP!(retry_send);
}
- Ok(BKResponse::SentMsg(Err(err))) => match err {
+ BKResponse::SentMsg(Err(err)) => match err {
Error::SendMsgError(txid) => {
error!("sending {}: retrying send", txid);
APPOP!(retry_send);
@@ -262,21 +257,20 @@ pub fn backend_loop(rx: Receiver<BKResponse>) {
APPOP!(show_error, (error));
}
},
- Ok(BKResponse::SentMsgRedaction(Err(_))) => {
+ BKResponse::SentMsgRedaction(Err(_)) => {
let error = i18n("Error deleting message");
APPOP!(show_error, (error));
}
- Ok(BKResponse::DirectoryProtocols(Err(_)))
- | Ok(BKResponse::DirectorySearch(Err(_))) => {
+ BKResponse::DirectoryProtocols(Err(_)) | BKResponse::DirectorySearch(Err(_)) => {
let error = i18n("Error searching for rooms");
APPOP!(reset_directory_state);
APPOP!(show_error, (error));
}
- Ok(BKResponse::Sync(Err(err))) => {
+ BKResponse::Sync(Err(err)) => {
error!("SYNC Error: {:?}", err);
APPOP!(sync_error);
}
- Ok(err) => {
+ err => {
error!("Query error: {:?}", err);
}
};
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]