Auto merge of #8432 - rnestler:refactor_loops, r=frewsxcv

Refactor some loop{} to while let{}

I searched for some similar cases like in #8384 and tried to refactor them as well.
@frewsxcv Care to review?

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8432)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2015-11-10 04:33:23 +05:30
commit aa62cc74d3
2 changed files with 16 additions and 18 deletions

View file

@ -126,11 +126,10 @@ impl TimerScheduler {
} }
fn run_event_loop(&self) { fn run_event_loop(&self) {
loop { while let Some(task) = self.receive_next_task() {
match self.receive_next_task() { match task {
Some(Task::HandleRequest(request)) => self.handle_request(request), Task::HandleRequest(request) => self.handle_request(request),
Some(Task::DispatchDueEvents) => self.dispatch_due_events(), Task::DispatchDueEvents => self.dispatch_due_events(),
None => break,
} }
} }
} }

View file

@ -401,30 +401,30 @@ fn run_server(sender: Sender<DevtoolsControlMsg>,
} }
}); });
loop { while let Ok(msg) = receiver.recv() {
match receiver.recv() { match msg {
Ok(DevtoolsControlMsg::FromChrome(ChromeToDevtoolsControlMsg::AddClient(stream))) => { DevtoolsControlMsg::FromChrome(ChromeToDevtoolsControlMsg::AddClient(stream)) => {
let actors = actors.clone(); let actors = actors.clone();
accepted_connections.push(stream.try_clone().unwrap()); accepted_connections.push(stream.try_clone().unwrap());
spawn_named("DevtoolsClientHandler".to_owned(), move || { spawn_named("DevtoolsClientHandler".to_owned(), move || {
handle_client(actors, stream.try_clone().unwrap()) handle_client(actors, stream.try_clone().unwrap())
}) })
} }
Ok(DevtoolsControlMsg::FromScript(ScriptToDevtoolsControlMsg::FramerateTick( DevtoolsControlMsg::FromScript(ScriptToDevtoolsControlMsg::FramerateTick(
actor_name, tick))) => actor_name, tick)) =>
handle_framerate_tick(actors.clone(), actor_name, tick), handle_framerate_tick(actors.clone(), actor_name, tick),
Ok(DevtoolsControlMsg::FromScript(ScriptToDevtoolsControlMsg::NewGlobal( DevtoolsControlMsg::FromScript(ScriptToDevtoolsControlMsg::NewGlobal(
ids, script_sender, pageinfo))) => ids, script_sender, pageinfo)) =>
handle_new_global(actors.clone(), ids, script_sender, &mut actor_pipelines, handle_new_global(actors.clone(), ids, script_sender, &mut actor_pipelines,
&mut actor_workers, pageinfo), &mut actor_workers, pageinfo),
Ok(DevtoolsControlMsg::FromScript(ScriptToDevtoolsControlMsg::ConsoleAPI( DevtoolsControlMsg::FromScript(ScriptToDevtoolsControlMsg::ConsoleAPI(
id, id,
console_message, console_message,
worker_id))) => worker_id)) =>
handle_console_message(actors.clone(), id, worker_id, console_message, handle_console_message(actors.clone(), id, worker_id, console_message,
&actor_pipelines, &actor_workers), &actor_pipelines, &actor_workers),
Ok(DevtoolsControlMsg::FromChrome(ChromeToDevtoolsControlMsg::NetworkEvent( DevtoolsControlMsg::FromChrome(ChromeToDevtoolsControlMsg::NetworkEvent(
request_id, network_event))) => { request_id, network_event)) => {
// copy the accepted_connections vector // copy the accepted_connections vector
let mut connections = Vec::<TcpStream>::new(); let mut connections = Vec::<TcpStream>::new();
for stream in &accepted_connections { for stream in &accepted_connections {
@ -435,8 +435,7 @@ fn run_server(sender: Sender<DevtoolsControlMsg>,
handle_network_event(actors.clone(), connections, &actor_pipelines, &mut actor_requests, handle_network_event(actors.clone(), connections, &actor_pipelines, &mut actor_requests,
&actor_workers, PipelineId::fake_root_pipeline_id(), request_id, network_event); &actor_workers, PipelineId::fake_root_pipeline_id(), request_id, network_event);
}, },
Ok(DevtoolsControlMsg::FromChrome(ChromeToDevtoolsControlMsg::ServerExitMsg)) | DevtoolsControlMsg::FromChrome(ChromeToDevtoolsControlMsg::ServerExitMsg) => break
Err(RecvError) => break
} }
} }
for connection in &mut accepted_connections { for connection in &mut accepted_connections {