rust/compiler/rustc_data_structures/src
Manish Goregaokar b87d0d0d94
Rollup merge of #88711 - Mark-Simulacrum:fix-dfs-bug, r=jackh726
Rework DepthFirstSearch API

This expands the API to be more flexible, allowing for more visitation patterns
on graphs. This will be useful to avoid extra datasets (and allocations) in
cases where the expanded DFS API is sufficient.

This also fixes a bug with the previous DFS constructor, which left the start
node not marked as visited (even though it was immediately returned).

Commit written by ```@nikomatsakis``` originally, cherry picked from several commits in work on never type stabilization, but stands alone.
2021-09-12 03:44:57 -07:00
..
base_n mv compiler to compiler/ 2020-08-30 18:45:07 +03:00
binary_search_util mv compiler to compiler/ 2020-08-30 18:45:07 +03:00
graph Rework DepthFirstSearch API 2021-09-08 12:23:37 -04:00
obligation_forest Some perf optimizations and logging 2021-07-17 16:09:17 -04:00
owning_ref Also fix “a OwningRef 2021-08-24 02:28:38 +02:00
sip128 SipHasher128: improve constant names and add more comments 2020-10-11 23:48:35 -07:00
small_c_str mv compiler to compiler/ 2020-08-30 18:45:07 +03:00
snapshot_map mv compiler to compiler/ 2020-08-30 18:45:07 +03:00
sorted_map Use map_while instead of take_while + map 2021-07-23 18:04:28 +09:00
sso Use arrayvec 0.7, drop smallvec 0.6 2021-04-21 22:39:08 -07:00
stable_hasher Stable hashing: add comments and tests concerning platform-independence 2020-09-30 00:57:35 -07:00
tagged_ptr Remove (lots of) dead code 2021-03-27 22:16:33 -04:00
thin_vec Add FromIterator and IntoIterator impls for ThinVec 2021-04-05 19:09:51 -07:00
tiny_list Move some test-only code to test files 2021-03-17 10:31:30 -04:00
transitive_relation Move some test-only code to test files 2021-03-17 10:31:30 -04:00
vec_map Add VecMap to rustc_data_structures 2021-06-07 19:03:51 -03:00
atomic_ref.rs mv compiler to compiler/ 2020-08-30 18:45:07 +03:00
base_n.rs mv compiler to compiler/ 2020-08-30 18:45:07 +03:00
captures.rs Remove #[allow(unused_lifetimes)] which is now unnecessary 2021-06-17 08:56:54 +09:00
fingerprint.rs Allow for reading raw bytes from rustc_serialize::Decoder without unsafe code. 2021-03-25 14:05:00 +01:00
flock.rs Fix the flock fallback implementation 2021-08-15 18:44:06 +02:00
frozen.rs mv compiler to compiler/ 2020-08-30 18:45:07 +03:00
functor.rs Use MaybeUninit::write in functor.rs 2021-08-30 17:23:49 +02:00
fx.rs mv compiler to compiler/ 2020-08-30 18:45:07 +03:00
jobserver.rs datastructures: replace lazy_static by SyncLazy from std 2020-09-01 22:06:47 +01:00
lib.rs rustc: Remove local variable IDs from Exports 2021-09-10 23:41:48 +03:00
macros.rs Allow variant attributes in enum_from_u32! 2021-02-28 11:53:55 -08:00
map_in_place.rs mv compiler to compiler/ 2020-08-30 18:45:07 +03:00
memmap.rs Add safety comment to StableAddress impl for Mmap 2021-04-03 14:51:05 +02:00
profiling.rs Fix typos “a”→“an” 2021-08-22 15:35:11 +02:00
ptr_key.rs mv compiler to compiler/ 2020-08-30 18:45:07 +03:00
sharded.rs Separate the query cache from the query state. 2021-02-13 21:14:58 +01:00
sip128.rs SipHasher128: improve constant names and add more comments 2020-10-11 23:48:35 -07:00
small_c_str.rs mv compiler to compiler/ 2020-08-30 18:45:07 +03:00
sorted_map.rs Replace absolute paths with relative ones 2020-10-13 14:16:45 +02:00
stable_hasher.rs rustc: Remove local variable IDs from Exports 2021-09-10 23:41:48 +03:00
stable_map.rs mv compiler to compiler/ 2020-08-30 18:45:07 +03:00
stable_set.rs mv compiler to compiler/ 2020-08-30 18:45:07 +03:00
stack.rs mv compiler to compiler/ 2020-08-30 18:45:07 +03:00
steal.rs Auto merge of #80692 - Aaron1011:feature/query-result-debug, r=estebank 2021-01-26 05:47:23 +00:00
svh.rs Fix outdated crate names in compiler docs 2021-04-08 11:12:14 -05:00
sync.rs Fix typos “a”→“an” 2021-08-22 15:35:11 +02:00
tagged_ptr.rs Miscellaneous inlining improvements 2021-06-02 08:49:58 +02:00
temp_dir.rs Capitalize safety comments 2020-09-08 22:37:18 -04:00
thin_vec.rs Remove SmallVector mention 2021-09-05 06:10:21 +02:00
tiny_list.rs Fix typos “a”→“an” 2021-08-22 15:35:11 +02:00
transitive_relation.rs Move some test-only code to test files 2021-03-17 10:31:30 -04:00
unhash.rs Avoid rehashing Fingerprint as a map key 2020-09-01 18:27:02 -07:00
vec_linked_list.rs mv compiler to compiler/ 2020-08-30 18:45:07 +03:00
vec_map.rs Add VecMap::get_value_matching and assert if > 1 element 2021-07-23 08:44:23 -03:00
work_queue.rs Remove (lots of) dead code 2021-03-27 22:16:33 -04:00