mirror of
https://github.com/a-b-street/abstreet.git
synced 2024-11-28 20:29:04 +03:00
67 lines
66 KiB
HTML
67 lines
66 KiB
HTML
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `DrivingSimState` struct in crate `sim`."><meta name="keywords" content="rust, rustlang, rust-lang, DrivingSimState"><title>sim::mechanics::driving::DrivingSimState - Rust</title><link rel="stylesheet" type="text/css" href="../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><link rel="stylesheet" type="text/css" href="../../../dark.css" disabled ><link rel="stylesheet" type="text/css" href="../../../ayu.css" disabled ><script src="../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="icon" type="image/svg+xml" href="../../../favicon.svg">
|
||
<link rel="alternate icon" type="image/png" href="../../../favicon-16x16.png">
|
||
<link rel="alternate icon" type="image/png" href="../../../favicon-32x32.png"><style type="text/css">#crate-search{background-image:url("../../../down-arrow.svg");}</style></head><body class="rustdoc struct"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">☰</div><a href='../../../sim/index.html'><div class='logo-container rust-logo'><img src='../../../rust-logo.png' alt='logo'></div></a><p class='location'>Struct DrivingSimState</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#fields">Fields</a><div class="sidebar-links"><a href="#structfield.cars">cars</a><a href="#structfield.events">events</a><a href="#structfield.handle_uber_turns">handle_uber_turns</a><a href="#structfield.queues">queues</a><a href="#structfield.recalc_lanechanging">recalc_lanechanging</a><a href="#structfield.time_to_park_offstreet">time_to_park_offstreet</a><a href="#structfield.time_to_park_onstreet">time_to_park_onstreet</a><a href="#structfield.time_to_unpark_offstreet">time_to_unpark_offstreet</a><a href="#structfield.time_to_unpark_onstreet">time_to_unpark_onstreet</a></div><a class="sidebar-title" href="#implementations">Methods</a><div class="sidebar-links"><a href="#method.agent_properties">agent_properties</a><a href="#method.all_waiting_people">all_waiting_people</a><a href="#method.collect_events">collect_events</a><a href="#method.debug_car">debug_car</a><a href="#method.debug_lane">debug_lane</a><a href="#method.debug_queue_lengths">debug_queue_lengths</a><a href="#method.delete_car">delete_car</a><a href="#method.delete_car_internal">delete_car_internal</a><a href="#method.does_car_exist">does_car_exist</a><a href="#method.find_blockage_front">find_blockage_front</a><a href="#method.find_trips_to_edited_parking">find_trips_to_edited_parking</a><a href="#method.find_vehicles_affected_by_live_edits">find_vehicles_affected_by_live_edits</a><a href="#method.get_all_draw_cars">get_all_draw_cars</a><a href="#method.get_all_driving_paths">get_all_driving_paths</a><a href="#method.get_draw_cars_on">get_draw_cars_on</a><a href="#method.get_owner_of_car">get_owner_of_car</a><a href="#method.get_path">get_path</a><a href="#method.get_single_draw_car">get_single_draw_car</a><a href="#method.get_unzoomed_agents">get_unzoomed_agents</a><a href="#method.handle_live_edits">handle_live_edits</a><a href="#method.new">new</a><a href="#method.percent_along_route">percent_along_route</a><a href="#method.start_car_on_lane">start_car_on_lane</a><a href="#method.target_lane_penalty">target_lane_penalty</a><a href="#method.trace_route">trace_route</a><a href="#method.trim_last_steps">trim_last_steps</a><a href="#method.update_car">update_car</a><a href="#method.update_car_with_distances">update_car_with_distances</a><a href="#method.update_car_without_distances">update_car_without_distances</a><a href="#method.update_laggy_head">update_laggy_head</a></div><a class="sidebar-title" href="#trait-implementations">Trait Implementations</a><div class="sidebar-links"><a href="#impl-Clone">Clone</a><a href="#impl-Deserialize%3C%27de%3E">Deserialize<'de></a><a href="#impl-Serialize">Serialize</a></div><a class="sidebar-title" href="#synthetic-implementations">Auto Trait Implementations</a><div class="sidebar-links"><a href="#impl-RefUnwindSafe">RefUnwindSafe</a><a href="#impl-Send">Send</a><a href="#impl-Sync">Sync</a><a href="#impl-Unpin">Unpin</a><a href="#impl-UnwindSafe">UnwindSafe</a></div><a class="sidebar-title" href="#blanket-implementations">Blanket Implementations</a><div class="sidebar-links"><a href="#impl-Any">Any</a><a href="#impl-Borrow%3CT%3E">Borrow<T></a><a href="#impl-BorrowMut%3CT%3E">BorrowMut<T></a><a href="#impl-DeserializeOwned">DeserializeOwned</a><a href="#impl-Downcast">Downcast</a><a href="#impl-DowncastSync">DowncastSync</a><a href="#impl-From%3CT%3E">From<T></a><a href="#impl-Into%3CU%3E">Into<U></a><a href="#impl-Same%3CT%3E">Same<T></a><a href="#impl-ToOwned">ToOwned</a><a href="#impl-TryFrom%3CU%3E">TryFrom<U></a><a href="#impl-TryInto%3CU%3E">TryInto<U></a><a href="#impl-VZip%3CV%3E">VZip<V></a></div></div><p class='location'><a href='../../index.html'>sim</a>::<wbr><a href='../index.html'>mechanics</a>::<wbr><a href='index.html'>driving</a></p><script>window.sidebarCurrent = {name: 'DrivingSimState', ty: 'struct', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../theme.js"></script><nav class="sub"><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" disabled autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"></div><span class="help-button">?</span>
|
||
<a id="settings-menu" href="../../../settings.html"><img src="../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>−</span>]</a></span><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#27-50' title='goto source code'>[src]</a></span><span class='in-band'>Struct <a href='../../index.html'>sim</a>::<wbr><a href='../index.html'>mechanics</a>::<wbr><a href='index.html'>driving</a>::<wbr><a class="struct" href=''>DrivingSimState</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust struct'>pub struct DrivingSimState {
|
||
cars: <a class="struct" href="../../../abstutil/collections/struct.FixedMap.html" title="struct abstutil::collections::FixedMap">FixedMap</a><<a class="struct" href="../../../sim/struct.CarID.html" title="struct sim::CarID">CarID</a>, <a class="struct" href="../../../sim/mechanics/car/struct.Car.html" title="struct sim::mechanics::car::Car">Car</a>>,
|
||
queues: <a class="struct" href="https://doc.rust-lang.org/nightly/std/collections/hash/map/struct.HashMap.html" title="struct std::collections::hash::map::HashMap">HashMap</a><<a class="enum" href="../../../map_model/traversable/enum.Traversable.html" title="enum map_model::traversable::Traversable">Traversable</a>, <a class="struct" href="../../../sim/mechanics/queue/struct.Queue.html" title="struct sim::mechanics::queue::Queue">Queue</a>>,
|
||
events: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="../../../sim/events/enum.Event.html" title="enum sim::events::Event">Event</a>>,
|
||
recalc_lanechanging: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
|
||
handle_uber_turns: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
|
||
time_to_unpark_onstreet: <a class="struct" href="../../../geom/duration/struct.Duration.html" title="struct geom::duration::Duration">Duration</a>,
|
||
time_to_park_onstreet: <a class="struct" href="../../../geom/duration/struct.Duration.html" title="struct geom::duration::Duration">Duration</a>,
|
||
time_to_unpark_offstreet: <a class="struct" href="../../../geom/duration/struct.Duration.html" title="struct geom::duration::Duration">Duration</a>,
|
||
time_to_park_offstreet: <a class="struct" href="../../../geom/duration/struct.Duration.html" title="struct geom::duration::Duration">Duration</a>,
|
||
}</pre></div><div class='docblock'><p>Simulates vehicles!</p>
|
||
</div><h2 id='fields' class='fields small-section-header'>
|
||
Fields<a href='#fields' class='anchor'></a></h2><span id="structfield.cars" class="structfield small-section-header"><a href="#structfield.cars" class="anchor field"></a><code>cars: <a class="struct" href="../../../abstutil/collections/struct.FixedMap.html" title="struct abstutil::collections::FixedMap">FixedMap</a><<a class="struct" href="../../../sim/struct.CarID.html" title="struct sim::CarID">CarID</a>, <a class="struct" href="../../../sim/mechanics/car/struct.Car.html" title="struct sim::mechanics::car::Car">Car</a>></code></span><span id="structfield.queues" class="structfield small-section-header"><a href="#structfield.queues" class="anchor field"></a><code>queues: <a class="struct" href="https://doc.rust-lang.org/nightly/std/collections/hash/map/struct.HashMap.html" title="struct std::collections::hash::map::HashMap">HashMap</a><<a class="enum" href="../../../map_model/traversable/enum.Traversable.html" title="enum map_model::traversable::Traversable">Traversable</a>, <a class="struct" href="../../../sim/mechanics/queue/struct.Queue.html" title="struct sim::mechanics::queue::Queue">Queue</a>></code></span><span id="structfield.events" class="structfield small-section-header"><a href="#structfield.events" class="anchor field"></a><code>events: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="../../../sim/events/enum.Event.html" title="enum sim::events::Event">Event</a>></code></span><span id="structfield.recalc_lanechanging" class="structfield small-section-header"><a href="#structfield.recalc_lanechanging" class="anchor field"></a><code>recalc_lanechanging: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span><span id="structfield.handle_uber_turns" class="structfield small-section-header"><a href="#structfield.handle_uber_turns" class="anchor field"></a><code>handle_uber_turns: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span><span id="structfield.time_to_unpark_onstreet" class="structfield small-section-header"><a href="#structfield.time_to_unpark_onstreet" class="anchor field"></a><code>time_to_unpark_onstreet: <a class="struct" href="../../../geom/duration/struct.Duration.html" title="struct geom::duration::Duration">Duration</a></code></span><span id="structfield.time_to_park_onstreet" class="structfield small-section-header"><a href="#structfield.time_to_park_onstreet" class="anchor field"></a><code>time_to_park_onstreet: <a class="struct" href="../../../geom/duration/struct.Duration.html" title="struct geom::duration::Duration">Duration</a></code></span><span id="structfield.time_to_unpark_offstreet" class="structfield small-section-header"><a href="#structfield.time_to_unpark_offstreet" class="anchor field"></a><code>time_to_unpark_offstreet: <a class="struct" href="../../../geom/duration/struct.Duration.html" title="struct geom::duration::Duration">Duration</a></code></span><span id="structfield.time_to_park_offstreet" class="structfield small-section-header"><a href="#structfield.time_to_park_offstreet" class="anchor field"></a><code>time_to_park_offstreet: <a class="struct" href="../../../geom/duration/struct.Duration.html" title="struct geom::duration::Duration">Duration</a></code></span><h2 id='implementations' class='small-section-header'>Implementations<a href='#implementations' class='anchor'></a></h2><h3 id='impl' class='impl'><code class='in-band'>impl <a class="struct" href="../../../sim/mechanics/driving/struct.DrivingSimState.html" title="struct sim::mechanics::driving::DrivingSimState">DrivingSimState</a></code><a href='#impl' class='anchor'></a><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#52-1167' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.new' class="method"><code>pub fn <a href='#method.new' class='fnname'>new</a>(map: &<a class="struct" href="../../../map_model/struct.Map.html" title="struct map_model::Map">Map</a>, opts: &<a class="struct" href="../../../sim/struct.SimOptions.html" title="struct sim::SimOptions">SimOptions</a>) -> <a class="struct" href="../../../sim/mechanics/driving/struct.DrivingSimState.html" title="struct sim::mechanics::driving::DrivingSimState">DrivingSimState</a></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#53-85' title='goto source code'>[src]</a></h4><h4 id='method.start_car_on_lane' class="method"><code>pub fn <a href='#method.start_car_on_lane' class='fnname'>start_car_on_lane</a>(<br> &mut self, <br> now: <a class="struct" href="../../../geom/time/struct.Time.html" title="struct geom::time::Time">Time</a>, <br> params: <a class="struct" href="../../../sim/struct.CreateCar.html" title="struct sim::CreateCar">CreateCar</a>, <br> ctx: &mut <a class="struct" href="../../../sim/sim/struct.Ctx.html" title="struct sim::sim::Ctx">Ctx</a><'_><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../../../sim/struct.CreateCar.html" title="struct sim::CreateCar">CreateCar</a>></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#88-183' title='goto source code'>[src]</a></h4><div class='docblock'><p>None if it worked, otherwise returns the CreateCar unmodified for possible retry.</p>
|
||
</div><h4 id='method.update_car' class="method"><code>pub fn <a href='#method.update_car' class='fnname'>update_car</a>(<br> &mut self, <br> id: <a class="struct" href="../../../sim/struct.CarID.html" title="struct sim::CarID">CarID</a>, <br> now: <a class="struct" href="../../../geom/time/struct.Time.html" title="struct geom::time::Time">Time</a>, <br> ctx: &mut <a class="struct" href="../../../sim/sim/struct.Ctx.html" title="struct sim::sim::Ctx">Ctx</a><'_>, <br> trips: &mut <a class="struct" href="../../../sim/trips/struct.TripManager.html" title="struct sim::trips::TripManager">TripManager</a>, <br> transit: &mut <a class="struct" href="../../../sim/transit/struct.TransitSimState.html" title="struct sim::transit::TransitSimState">TransitSimState</a>, <br> walking: &mut <a class="struct" href="../../../sim/mechanics/walking/struct.WalkingSimState.html" title="struct sim::mechanics::walking::WalkingSimState">WalkingSimState</a><br>)</code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#205-253' title='goto source code'>[src]</a></h4><div class='docblock'><p>State transitions for this car:</p>
|
||
<p>Crossing -> Queued or WaitingToAdvance
|
||
Unparking -> Crossing
|
||
IdlingAtStop -> Crossing
|
||
Queued -> last step handling (Parking or done)
|
||
WaitingToAdvance -> try to advance to the next step of the path
|
||
Parking -> done</p>
|
||
<p>State transitions for other cars:</p>
|
||
<p>Crossing -> Crossing (recalculate dist/time)
|
||
Queued -> Crossing</p>
|
||
<p>Why is it safe to process cars in any order, rather than making sure to follow the order
|
||
of queues? Because of the invariant that distances should never suddenly jump when a car
|
||
has entered/exiting a queue.
|
||
This car might have reached the router's end distance, but maybe not -- might
|
||
actually be stuck behind other cars. We have to calculate the distances right now to
|
||
be sure.</p>
|
||
</div><h4 id='method.update_car_without_distances' class="method"><code>fn <a href='#method.update_car_without_distances' class='fnname'>update_car_without_distances</a>(<br> &mut self, <br> car: &mut <a class="struct" href="../../../sim/mechanics/car/struct.Car.html" title="struct sim::mechanics::car::Car">Car</a>, <br> now: <a class="struct" href="../../../geom/time/struct.Time.html" title="struct geom::time::Time">Time</a>, <br> ctx: &mut <a class="struct" href="../../../sim/sim/struct.Ctx.html" title="struct sim::sim::Ctx">Ctx</a><'_>, <br> transit: &mut <a class="struct" href="../../../sim/transit/struct.TransitSimState.html" title="struct sim::transit::TransitSimState">TransitSimState</a><br>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#258-461' title='goto source code'>[src]</a></h4><h4 id='method.update_car_with_distances' class="method"><code>fn <a href='#method.update_car_with_distances' class='fnname'>update_car_with_distances</a>(<br> &mut self, <br> car: &mut <a class="struct" href="../../../sim/mechanics/car/struct.Car.html" title="struct sim::mechanics::car::Car">Car</a>, <br> dists: &<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="struct" href="../../../sim/struct.CarID.html" title="struct sim::CarID">CarID</a>, <a class="struct" href="../../../geom/distance/struct.Distance.html" title="struct geom::distance::Distance">Distance</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>>, <br> idx: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, <br> now: <a class="struct" href="../../../geom/time/struct.Time.html" title="struct geom::time::Time">Time</a>, <br> ctx: &mut <a class="struct" href="../../../sim/sim/struct.Ctx.html" title="struct sim::sim::Ctx">Ctx</a><'_>, <br> trips: &mut <a class="struct" href="../../../sim/trips/struct.TripManager.html" title="struct sim::trips::TripManager">TripManager</a>, <br> transit: &mut <a class="struct" href="../../../sim/transit/struct.TransitSimState.html" title="struct sim::transit::TransitSimState">TransitSimState</a>, <br> walking: &mut <a class="struct" href="../../../sim/mechanics/walking/struct.WalkingSimState.html" title="struct sim::mechanics::walking::WalkingSimState">WalkingSimState</a><br>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#464-618' title='goto source code'>[src]</a></h4><h4 id='method.delete_car' class="method"><code>pub fn <a href='#method.delete_car' class='fnname'>delete_car</a>(&mut self, c: <a class="struct" href="../../../sim/struct.CarID.html" title="struct sim::CarID">CarID</a>, now: <a class="struct" href="../../../geom/time/struct.Time.html" title="struct geom::time::Time">Time</a>, ctx: &mut <a class="struct" href="../../../sim/sim/struct.Ctx.html" title="struct sim::sim::Ctx">Ctx</a><'_>) -> <a class="struct" href="../../../sim/struct.Vehicle.html" title="struct sim::Vehicle">Vehicle</a></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#622-645' title='goto source code'>[src]</a></h4><div class='docblock'><p>Abruptly remove a vehicle from the simulation. They may be in any arbitrary state, like in
|
||
the middle of a turn or parking.</p>
|
||
</div><h4 id='method.delete_car_internal' class="method"><code>fn <a href='#method.delete_car_internal' class='fnname'>delete_car_internal</a>(<br> &mut self, <br> car: &mut <a class="struct" href="../../../sim/mechanics/car/struct.Car.html" title="struct sim::mechanics::car::Car">Car</a>, <br> dists: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="struct" href="../../../sim/struct.CarID.html" title="struct sim::CarID">CarID</a>, <a class="struct" href="../../../geom/distance/struct.Distance.html" title="struct geom::distance::Distance">Distance</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>>, <br> idx: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, <br> now: <a class="struct" href="../../../geom/time/struct.Time.html" title="struct geom::time::Time">Time</a>, <br> ctx: &mut <a class="struct" href="../../../sim/sim/struct.Ctx.html" title="struct sim::sim::Ctx">Ctx</a><'_><br>)</code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#647-712' title='goto source code'>[src]</a></h4><h4 id='method.update_laggy_head' class="method"><code>pub fn <a href='#method.update_laggy_head' class='fnname'>update_laggy_head</a>(&mut self, id: <a class="struct" href="../../../sim/struct.CarID.html" title="struct sim::CarID">CarID</a>, now: <a class="struct" href="../../../geom/time/struct.Time.html" title="struct geom::time::Time">Time</a>, ctx: &mut <a class="struct" href="../../../sim/sim/struct.Ctx.html" title="struct sim::sim::Ctx">Ctx</a><'_>)</code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#714-779' title='goto source code'>[src]</a></h4><h4 id='method.trim_last_steps' class="method"><code>fn <a href='#method.trim_last_steps' class='fnname'>trim_last_steps</a>(<br> &mut self, <br> car: &mut <a class="struct" href="../../../sim/mechanics/car/struct.Car.html" title="struct sim::mechanics::car::Car">Car</a>, <br> now: <a class="struct" href="../../../geom/time/struct.Time.html" title="struct geom::time::Time">Time</a>, <br> n: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, <br> ctx: &mut <a class="struct" href="../../../sim/sim/struct.Ctx.html" title="struct sim::sim::Ctx">Ctx</a><'_><br>)</code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#782-852' title='goto source code'>[src]</a></h4><h4 id='method.get_unzoomed_agents' class="method"><code>pub fn <a href='#method.get_unzoomed_agents' class='fnname'>get_unzoomed_agents</a>(&self, now: <a class="struct" href="../../../geom/time/struct.Time.html" title="struct geom::time::Time">Time</a>, map: &<a class="struct" href="../../../map_model/struct.Map.html" title="struct map_model::Map">Map</a>) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="../../../sim/struct.UnzoomedAgent.html" title="struct sim::UnzoomedAgent">UnzoomedAgent</a>></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#855-881' title='goto source code'>[src]</a></h4><div class='docblock'><p>Note the ordering of results is non-deterministic!</p>
|
||
</div><h4 id='method.does_car_exist' class="method"><code>pub fn <a href='#method.does_car_exist' class='fnname'>does_car_exist</a>(&self, id: <a class="struct" href="../../../sim/struct.CarID.html" title="struct sim::CarID">CarID</a>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#883-885' title='goto source code'>[src]</a></h4><h4 id='method.get_all_draw_cars' class="method"><code>pub fn <a href='#method.get_all_draw_cars' class='fnname'>get_all_draw_cars</a>(<br> &self, <br> now: <a class="struct" href="../../../geom/time/struct.Time.html" title="struct geom::time::Time">Time</a>, <br> map: &<a class="struct" href="../../../map_model/struct.Map.html" title="struct map_model::Map">Map</a>, <br> transit: &<a class="struct" href="../../../sim/transit/struct.TransitSimState.html" title="struct sim::transit::TransitSimState">TransitSimState</a><br>) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="../../../sim/struct.DrawCarInput.html" title="struct sim::DrawCarInput">DrawCarInput</a>></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#888-904' title='goto source code'>[src]</a></h4><div class='docblock'><p>Note the ordering of results is non-deterministic!</p>
|
||
</div><h4 id='method.get_single_draw_car' class="method"><code>pub fn <a href='#method.get_single_draw_car' class='fnname'>get_single_draw_car</a>(<br> &self, <br> id: <a class="struct" href="../../../sim/struct.CarID.html" title="struct sim::CarID">CarID</a>, <br> now: <a class="struct" href="../../../geom/time/struct.Time.html" title="struct geom::time::Time">Time</a>, <br> map: &<a class="struct" href="../../../map_model/struct.Map.html" title="struct map_model::Map">Map</a>, <br> transit: &<a class="struct" href="../../../sim/transit/struct.TransitSimState.html" title="struct sim::transit::TransitSimState">TransitSimState</a><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../../../sim/struct.DrawCarInput.html" title="struct sim::DrawCarInput">DrawCarInput</a>></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#907-918' title='goto source code'>[src]</a></h4><div class='docblock'><p>This is about as expensive as get_draw_cars_on.</p>
|
||
</div><h4 id='method.get_draw_cars_on' class="method"><code>pub fn <a href='#method.get_draw_cars_on' class='fnname'>get_draw_cars_on</a>(<br> &self, <br> now: <a class="struct" href="../../../geom/time/struct.Time.html" title="struct geom::time::Time">Time</a>, <br> on: <a class="enum" href="../../../map_model/traversable/enum.Traversable.html" title="enum map_model::traversable::Traversable">Traversable</a>, <br> map: &<a class="struct" href="../../../map_model/struct.Map.html" title="struct map_model::Map">Map</a>, <br> transit: &<a class="struct" href="../../../sim/transit/struct.TransitSimState.html" title="struct sim::transit::TransitSimState">TransitSimState</a><br>) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="../../../sim/struct.DrawCarInput.html" title="struct sim::DrawCarInput">DrawCarInput</a>></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#920-935' title='goto source code'>[src]</a></h4><h4 id='method.debug_car' class="method"><code>pub fn <a href='#method.debug_car' class='fnname'>debug_car</a>(&self, id: <a class="struct" href="../../../sim/struct.CarID.html" title="struct sim::CarID">CarID</a>)</code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#937-944' title='goto source code'>[src]</a></h4><h4 id='method.debug_lane' class="method"><code>pub fn <a href='#method.debug_lane' class='fnname'>debug_lane</a>(&self, id: <a class="struct" href="../../../map_model/objects/lane/struct.LaneID.html" title="struct map_model::objects::lane::LaneID">LaneID</a>)</code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#946-950' title='goto source code'>[src]</a></h4><h4 id='method.agent_properties' class="method"><code>pub fn <a href='#method.agent_properties' class='fnname'>agent_properties</a>(&self, id: <a class="struct" href="../../../sim/struct.CarID.html" title="struct sim::CarID">CarID</a>, now: <a class="struct" href="../../../geom/time/struct.Time.html" title="struct geom::time::Time">Time</a>) -> <a class="struct" href="../../../sim/struct.AgentProperties.html" title="struct sim::AgentProperties">AgentProperties</a></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#952-964' title='goto source code'>[src]</a></h4><h4 id='method.get_path' class="method"><code>pub fn <a href='#method.get_path' class='fnname'>get_path</a>(&self, id: <a class="struct" href="../../../sim/struct.CarID.html" title="struct sim::CarID">CarID</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><&<a class="struct" href="../../../map_model/pathfind/struct.Path.html" title="struct map_model::pathfind::Path">Path</a>></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#966-969' title='goto source code'>[src]</a></h4><h4 id='method.get_all_driving_paths' class="method"><code>pub fn <a href='#method.get_all_driving_paths' class='fnname'>get_all_driving_paths</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><&<a class="struct" href="../../../map_model/pathfind/struct.Path.html" title="struct map_model::pathfind::Path">Path</a>></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#970-975' title='goto source code'>[src]</a></h4><h4 id='method.trace_route' class="method"><code>pub fn <a href='#method.trace_route' class='fnname'>trace_route</a>(<br> &self, <br> now: <a class="struct" href="../../../geom/time/struct.Time.html" title="struct geom::time::Time">Time</a>, <br> id: <a class="struct" href="../../../sim/struct.CarID.html" title="struct sim::CarID">CarID</a>, <br> map: &<a class="struct" href="../../../map_model/struct.Map.html" title="struct map_model::Map">Map</a>, <br> dist_ahead: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../../../geom/distance/struct.Distance.html" title="struct geom::distance::Distance">Distance</a>><br>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../../../geom/polyline/struct.PolyLine.html" title="struct geom::polyline::PolyLine">PolyLine</a>></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#977-992' title='goto source code'>[src]</a></h4><h4 id='method.percent_along_route' class="method"><code>pub fn <a href='#method.percent_along_route' class='fnname'>percent_along_route</a>(&self, id: <a class="struct" href="../../../sim/struct.CarID.html" title="struct sim::CarID">CarID</a>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f64.html">f64</a></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#994-996' title='goto source code'>[src]</a></h4><h4 id='method.get_owner_of_car' class="method"><code>pub fn <a href='#method.get_owner_of_car' class='fnname'>get_owner_of_car</a>(&self, id: <a class="struct" href="../../../sim/struct.CarID.html" title="struct sim::CarID">CarID</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../../../sim/struct.PersonID.html" title="struct sim::PersonID">PersonID</a>></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#998-1001' title='goto source code'>[src]</a></h4><h4 id='method.find_blockage_front' class="method"><code>pub fn <a href='#method.find_blockage_front' class='fnname'>find_blockage_front</a>(<br> &self, <br> start: <a class="struct" href="../../../sim/struct.CarID.html" title="struct sim::CarID">CarID</a>, <br> map: &<a class="struct" href="../../../map_model/struct.Map.html" title="struct map_model::Map">Map</a>, <br> intersections: &<a class="struct" href="../../../sim/mechanics/intersection/struct.IntersectionSimState.html" title="struct sim::mechanics::intersection::IntersectionSimState">IntersectionSimState</a><br>) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#1004-1063' title='goto source code'>[src]</a></h4><h4 id='method.collect_events' class="method"><code>pub fn <a href='#method.collect_events' class='fnname'>collect_events</a>(&mut self) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="../../../sim/events/enum.Event.html" title="enum sim::events::Event">Event</a>></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#1065-1067' title='goto source code'>[src]</a></h4><h4 id='method.target_lane_penalty' class="method"><code>pub fn <a href='#method.target_lane_penalty' class='fnname'>target_lane_penalty</a>(&self, l: <a class="struct" href="../../../map_model/objects/lane/struct.LaneID.html" title="struct map_model::objects::lane::LaneID">LaneID</a>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#1069-1071' title='goto source code'>[src]</a></h4><h4 id='method.find_trips_to_edited_parking' class="method"><code>pub fn <a href='#method.find_trips_to_edited_parking' class='fnname'>find_trips_to_edited_parking</a>(<br> &self, <br> spots: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/collections/btree/set/struct.BTreeSet.html" title="struct alloc::collections::btree::set::BTreeSet">BTreeSet</a><<a class="enum" href="../../../sim/enum.ParkingSpot.html" title="enum sim::ParkingSpot">ParkingSpot</a>><br>) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="enum" href="../../../sim/enum.AgentID.html" title="enum sim::AgentID">AgentID</a>, <a class="struct" href="../../../sim/struct.TripID.html" title="struct sim::TripID">TripID</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#1073-1087' title='goto source code'>[src]</a></h4><h4 id='method.find_vehicles_affected_by_live_edits' class="method"><code>pub fn <a href='#method.find_vehicles_affected_by_live_edits' class='fnname'>find_vehicles_affected_by_live_edits</a>(<br> &self, <br> closed_intersections: &<a class="struct" href="https://doc.rust-lang.org/nightly/std/collections/hash/set/struct.HashSet.html" title="struct std::collections::hash::set::HashSet">HashSet</a><<a class="struct" href="../../../map_model/objects/intersection/struct.IntersectionID.html" title="struct map_model::objects::intersection::IntersectionID">IntersectionID</a>>, <br> edited_lanes: &<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/collections/btree/set/struct.BTreeSet.html" title="struct alloc::collections::btree::set::BTreeSet">BTreeSet</a><<a class="struct" href="../../../map_model/objects/lane/struct.LaneID.html" title="struct map_model::objects::lane::LaneID">LaneID</a>><br>) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="enum" href="../../../sim/enum.AgentID.html" title="enum sim::AgentID">AgentID</a>, <a class="struct" href="../../../sim/struct.TripID.html" title="struct sim::TripID">TripID</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#1090-1113' title='goto source code'>[src]</a></h4><div class='docblock'><p>Finds vehicles that're laggy heads on affected parts of the map.</p>
|
||
</div><h4 id='method.handle_live_edits' class="method"><code>pub fn <a href='#method.handle_live_edits' class='fnname'>handle_live_edits</a>(&mut self, map: &<a class="struct" href="../../../map_model/struct.Map.html" title="struct map_model::Map">Map</a>)</code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#1115-1150' title='goto source code'>[src]</a></h4><h4 id='method.all_waiting_people' class="method"><code>pub fn <a href='#method.all_waiting_people' class='fnname'>all_waiting_people</a>(<br> &self, <br> now: <a class="struct" href="../../../geom/time/struct.Time.html" title="struct geom::time::Time">Time</a>, <br> delays: &mut <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/collections/btree/map/struct.BTreeMap.html" title="struct alloc::collections::btree::map::BTreeMap">BTreeMap</a><<a class="struct" href="../../../sim/struct.PersonID.html" title="struct sim::PersonID">PersonID</a>, <a class="struct" href="../../../geom/duration/struct.Duration.html" title="struct geom::duration::Duration">Duration</a>><br>)</code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#1152-1161' title='goto source code'>[src]</a></h4><h4 id='method.debug_queue_lengths' class="method"><code>pub fn <a href='#method.debug_queue_lengths' class='fnname'>debug_queue_lengths</a>(&self, l: <a class="struct" href="../../../map_model/objects/lane/struct.LaneID.html" title="struct map_model::objects::lane::LaneID">LaneID</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="struct" href="../../../geom/distance/struct.Distance.html" title="struct geom::distance::Distance">Distance</a>, <a class="struct" href="../../../geom/distance/struct.Distance.html" title="struct geom::distance::Distance">Distance</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#1163-1166' title='goto source code'>[src]</a></h4></div><h2 id='trait-implementations' class='small-section-header'>Trait Implementations<a href='#trait-implementations' class='anchor'></a></h2><div id='trait-implementations-list'><h3 id='impl-Clone' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="struct" href="../../../sim/mechanics/driving/struct.DrivingSimState.html" title="struct sim::mechanics::driving::DrivingSimState">DrivingSimState</a></code><a href='#impl-Clone' class='anchor'></a><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#26' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.clone' class="method hidden"><code>fn <a href='https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone' class='fnname'>clone</a>(&self) -> <a class="struct" href="../../../sim/mechanics/driving/struct.DrivingSimState.html" title="struct sim::mechanics::driving::DrivingSimState">DrivingSimState</a></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#26' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Returns a copy of the value. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone">Read more</a></p>
|
||
</div><h4 id='method.clone_from' class="method hidden"><code>fn <a href='https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#method.clone_from' class='fnname'>clone_from</a>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&</a>Self)</code><span class='since' title='Stable since Rust version 1.0.0'>1.0.0</span><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/clone.rs.html#128-130' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#method.clone_from">Read more</a></p>
|
||
</div></div><h3 id='impl-Deserialize%3C%27de%3E' class='impl'><code class='in-band'>impl<'de> <a class="trait" href="https://docs.rs/serde/1.0.117/serde/de/trait.Deserialize.html" title="trait serde::de::Deserialize">Deserialize</a><'de> for <a class="struct" href="../../../sim/mechanics/driving/struct.DrivingSimState.html" title="struct sim::mechanics::driving::DrivingSimState">DrivingSimState</a></code><a href='#impl-Deserialize%3C%27de%3E' class='anchor'></a><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#26' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.deserialize' class="method hidden"><code>fn <a href='https://docs.rs/serde/1.0.117/serde/de/trait.Deserialize.html#tymethod.deserialize' class='fnname'>deserialize</a><__D>(__deserializer: __D) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Self, __D::<a class="type" href="https://docs.rs/serde/1.0.117/serde/de/trait.Deserializer.html#associatedtype.Error" title="type serde::de::Deserializer::Error">Error</a>> <span class="where fmt-newline">where<br> __D: <a class="trait" href="https://docs.rs/serde/1.0.117/serde/de/trait.Deserializer.html" title="trait serde::de::Deserializer">Deserializer</a><'de>, </span></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#26' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Deserialize this value from the given Serde deserializer. <a href="https://docs.rs/serde/1.0.117/serde/de/trait.Deserialize.html#tymethod.deserialize">Read more</a></p>
|
||
</div></div><h3 id='impl-Serialize' class='impl'><code class='in-band'>impl <a class="trait" href="https://docs.rs/serde/1.0.117/serde/ser/trait.Serialize.html" title="trait serde::ser::Serialize">Serialize</a> for <a class="struct" href="../../../sim/mechanics/driving/struct.DrivingSimState.html" title="struct sim::mechanics::driving::DrivingSimState">DrivingSimState</a></code><a href='#impl-Serialize' class='anchor'></a><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#26' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.serialize' class="method hidden"><code>fn <a href='https://docs.rs/serde/1.0.117/serde/ser/trait.Serialize.html#tymethod.serialize' class='fnname'>serialize</a><__S>(&self, __serializer: __S) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><__S::<a class="type" href="https://docs.rs/serde/1.0.117/serde/ser/trait.Serializer.html#associatedtype.Ok" title="type serde::ser::Serializer::Ok">Ok</a>, __S::<a class="type" href="https://docs.rs/serde/1.0.117/serde/ser/trait.Serializer.html#associatedtype.Error" title="type serde::ser::Serializer::Error">Error</a>> <span class="where fmt-newline">where<br> __S: <a class="trait" href="https://docs.rs/serde/1.0.117/serde/ser/trait.Serializer.html" title="trait serde::ser::Serializer">Serializer</a>, </span></code><a class='srclink' href='../../../src/sim/mechanics/driving.rs.html#26' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Serialize this value into the given Serde serializer. <a href="https://docs.rs/serde/1.0.117/serde/ser/trait.Serialize.html#tymethod.serialize">Read more</a></p>
|
||
</div></div></div><h2 id='synthetic-implementations' class='small-section-header'>Auto Trait Implementations<a href='#synthetic-implementations' class='anchor'></a></h2><div id='synthetic-implementations-list'><h3 id='impl-RefUnwindSafe' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.RefUnwindSafe.html" title="trait std::panic::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="../../../sim/mechanics/driving/struct.DrivingSimState.html" title="struct sim::mechanics::driving::DrivingSimState">DrivingSimState</a></code><a href='#impl-RefUnwindSafe' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-Send' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="../../../sim/mechanics/driving/struct.DrivingSimState.html" title="struct sim::mechanics::driving::DrivingSimState">DrivingSimState</a></code><a href='#impl-Send' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-Sync' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="../../../sim/mechanics/driving/struct.DrivingSimState.html" title="struct sim::mechanics::driving::DrivingSimState">DrivingSimState</a></code><a href='#impl-Sync' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-Unpin' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="../../../sim/mechanics/driving/struct.DrivingSimState.html" title="struct sim::mechanics::driving::DrivingSimState">DrivingSimState</a></code><a href='#impl-Unpin' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-UnwindSafe' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.UnwindSafe.html" title="trait std::panic::UnwindSafe">UnwindSafe</a> for <a class="struct" href="../../../sim/mechanics/driving/struct.DrivingSimState.html" title="struct sim::mechanics::driving::DrivingSimState">DrivingSimState</a></code><a href='#impl-UnwindSafe' class='anchor'></a></h3><div class='impl-items'></div></div><h2 id='blanket-implementations' class='small-section-header'>Blanket Implementations<a href='#blanket-implementations' class='anchor'></a></h2><div id='blanket-implementations-list'><h3 id='impl-Any' class='impl'><code class='in-band'>impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T <span class="where fmt-newline">where<br> T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>, </span></code><a href='#impl-Any' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/any.rs.html#108-112' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.type_id' class="method hidden"><code>fn <a href='https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id' class='fnname'>type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/nightly/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/any.rs.html#109-111' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id">Read more</a></p>
|
||
</div></div><h3 id='impl-Borrow%3CT%3E' class='impl'><code class='in-band'>impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T <span class="where fmt-newline">where<br> T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>, </span></code><a href='#impl-Borrow%3CT%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210-214' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.borrow' class="method hidden"><code>fn <a href='https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow' class='fnname'>borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&</a>T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#211-213' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></p>
|
||
</div></div><h3 id='impl-BorrowMut%3CT%3E' class='impl'><code class='in-band'>impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T <span class="where fmt-newline">where<br> T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>, </span></code><a href='#impl-BorrowMut%3CT%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217-221' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.borrow_mut' class="method hidden"><code>fn <a href='https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut' class='fnname'>borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut </a>T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#218-220' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></p>
|
||
</div></div><h3 id='impl-DeserializeOwned' class='impl'><code class='in-band'>impl<T> <a class="trait" href="https://docs.rs/serde/1.0.117/serde/de/trait.DeserializeOwned.html" title="trait serde::de::DeserializeOwned">DeserializeOwned</a> for T <span class="where fmt-newline">where<br> T: for<'de> <a class="trait" href="https://docs.rs/serde/1.0.117/serde/de/trait.Deserialize.html" title="trait serde::de::Deserialize">Deserialize</a><'de>, </span></code><a href='#impl-DeserializeOwned' class='anchor'></a><a class='srclink' href='https://docs.rs/serde/1.0.117/src/serde/de/mod.rs.html#604' title='goto source code'>[src]</a></h3><div class='impl-items'></div><h3 id='impl-Downcast' class='impl'><code class='in-band'>impl<T> Downcast for T <span class="where fmt-newline">where<br> T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a>, </span></code><a href='#impl-Downcast' class='anchor'></a></h3><div class='impl-items'><h4 id='method.into_any' class="method hidden"><code>fn <a href='#method.into_any' class='fnname'>into_any</a>(self: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><T>) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><dyn <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + 'static></code></h4><div class='docblock hidden'><p>Convert <code>Box<dyn Trait></code> (where <code>Trait: Downcast</code>) to <code>Box<dyn Any></code>. <code>Box<dyn Any></code> can
|
||
then be further <code>downcast</code> into <code>Box<ConcreteType></code> where <code>ConcreteType</code> implements <code>Trait</code>. <a href="#tymethod.into_any">Read more</a></p>
|
||
</div><h4 id='method.into_any_rc' class="method hidden"><code>fn <a href='#method.into_any_rc' class='fnname'>into_any_rc</a>(self: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/rc/struct.Rc.html" title="struct alloc::rc::Rc">Rc</a><T>) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/rc/struct.Rc.html" title="struct alloc::rc::Rc">Rc</a><dyn <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + 'static></code></h4><div class='docblock hidden'><p>Convert <code>Rc<Trait></code> (where <code>Trait: Downcast</code>) to <code>Rc<Any></code>. <code>Rc<Any></code> can then be
|
||
further <code>downcast</code> into <code>Rc<ConcreteType></code> where <code>ConcreteType</code> implements <code>Trait</code>. <a href="#tymethod.into_any_rc">Read more</a></p>
|
||
</div><h4 id='method.as_any' class="method hidden"><code>fn <a href='#method.as_any' class='fnname'>as_any</a>(&self) -> &(dyn <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + 'static)</code></h4><div class='docblock hidden'><p>Convert <code>&Trait</code> (where <code>Trait: Downcast</code>) to <code>&Any</code>. This is needed since Rust cannot
|
||
generate <code>&Any</code>'s vtable from <code>&Trait</code>'s. <a href="#tymethod.as_any">Read more</a></p>
|
||
</div><h4 id='method.as_any_mut' class="method hidden"><code>fn <a href='#method.as_any_mut' class='fnname'>as_any_mut</a>(&mut self) -> &mut (dyn <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + 'static)</code></h4><div class='docblock hidden'><p>Convert <code>&mut Trait</code> (where <code>Trait: Downcast</code>) to <code>&Any</code>. This is needed since Rust cannot
|
||
generate <code>&mut Any</code>'s vtable from <code>&mut Trait</code>'s. <a href="#tymethod.as_any_mut">Read more</a></p>
|
||
</div></div><h3 id='impl-DowncastSync' class='impl'><code class='in-band'>impl<T> DowncastSync for T <span class="where fmt-newline">where<br> T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a>, </span></code><a href='#impl-DowncastSync' class='anchor'></a></h3><div class='impl-items'><h4 id='method.into_any_arc' class="method hidden"><code>fn <a href='#method.into_any_arc' class='fnname'>into_any_arc</a>(self: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a><T>) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a><dyn <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + 'static + <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>></code></h4><div class='docblock hidden'><p>Convert <code>Arc<Trait></code> (where <code>Trait: Downcast</code>) to <code>Arc<Any></code>. <code>Arc<Any></code> can then be
|
||
further <code>downcast</code> into <code>Arc<ConcreteType></code> where <code>ConcreteType</code> implements <code>Trait</code>. <a href="#tymethod.into_any_arc">Read more</a></p>
|
||
</div></div><h3 id='impl-From%3CT%3E' class='impl'><code class='in-band'>impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</code><a href='#impl-From%3CT%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#551-555' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.from' class="method hidden"><code>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from' class='fnname'>from</a>(t: T) -> T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#552-554' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
|
||
</div></div><h3 id='impl-Into%3CU%3E' class='impl'><code class='in-band'>impl<T, U> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><U> for T <span class="where fmt-newline">where<br> U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a><T>, </span></code><a href='#impl-Into%3CU%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#540-547' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.into' class="method hidden"><code>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.Into.html#tymethod.into' class='fnname'>into</a>(self) -> U</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#544-546' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
|
||
</div></div><h3 id='impl-Same%3CT%3E' class='impl'><code class='in-band'>impl<T> Same<T> for T</code><a href='#impl-Same%3CT%3E' class='anchor'></a></h3><div class='impl-items'><h4 id='associatedtype.Output' class="type"><code>type <a href='#associatedtype.Output' class="type">Output</a> = T</code></h4><div class='docblock'><p>Should always be <code>Self</code></p>
|
||
</div></div><h3 id='impl-ToOwned' class='impl'><code class='in-band'>impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T <span class="where fmt-newline">where<br> T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>, </span></code><a href='#impl-ToOwned' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#80-92' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Owned' class="type"><code>type <a href='https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#associatedtype.Owned' class="type">Owned</a> = T</code></h4><div class='docblock'><p>The resulting type after obtaining ownership.</p>
|
||
</div><h4 id='method.to_owned' class="method hidden"><code>fn <a href='https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#tymethod.to_owned' class='fnname'>to_owned</a>(&self) -> T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#85-87' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></p>
|
||
</div><h4 id='method.clone_into' class="method hidden"><code>fn <a href='https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#method.clone_into' class='fnname'>clone_into</a>(&self, target: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut </a>T)</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#89-91' title='goto source code'>[src]</a></h4><div class='stability hidden'><div class='stab unstable'><details><summary><span class='emoji'>🔬</span> This is a nightly-only experimental API. (<code>toowned_clone_into</code>)</summary><p>recently added</p>
|
||
</details></div></div><div class='docblock hidden'><p>Uses borrowed data to replace owned data, usually by cloning. <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></p>
|
||
</div></div><h3 id='impl-TryFrom%3CU%3E' class='impl'><code class='in-band'>impl<T, U> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U> for T <span class="where fmt-newline">where<br> U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><T>, </span></code><a href='#impl-TryFrom%3CU%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#588-597' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Error' class="type"><code>type <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error' class="type">Error</a> = <a class="enum" href="https://doc.rust-lang.org/nightly/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></code></h4><div class='docblock'><p>The type returned in the event of a conversion error.</p>
|
||
</div><h4 id='method.try_from' class="method hidden"><code>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#tymethod.try_from' class='fnname'>try_from</a>(value: U) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, <T as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U>>::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#594-596' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
|
||
</div></div><h3 id='impl-TryInto%3CU%3E' class='impl'><code class='in-band'>impl<T, U> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a><U> for T <span class="where fmt-newline">where<br> U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>, </span></code><a href='#impl-TryInto%3CU%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#574-583' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Error-1' class="type"><code>type <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#associatedtype.Error' class="type">Error</a> = <U as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></code></h4><div class='docblock'><p>The type returned in the event of a conversion error.</p>
|
||
</div><h4 id='method.try_into' class="method hidden"><code>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#tymethod.try_into' class='fnname'>try_into</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><U, <U as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#580-582' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
|
||
</div></div><h3 id='impl-VZip%3CV%3E' class='impl'><code class='in-band'>impl<V, T> VZip<V> for T <span class="where fmt-newline">where<br> V: MultiLane<T>, </span></code><a href='#impl-VZip%3CV%3E' class='anchor'></a></h3><div class='impl-items'><h4 id='method.vzip' class="method hidden"><code>fn <a href='#method.vzip' class='fnname'>vzip</a>(self) -> V</code></h4></div></div></section><section id="search" class="content hidden"></section><section class="footer"></section><script>window.rootPath = "../../../";window.currentCrate = "sim";</script><script src="../../../main.js"></script><script defer src="../../../search-index.js"></script></body></html> |