luaur_analysis/methods/
constraint_graph_copy_dependencies_of.rs1use crate::records::constraint_graph::ConstraintGraph;
2use crate::records::reference_count_initializer::ReferenceCountInitializer;
3use crate::records::type_ids::TypeIds;
4use crate::type_aliases::constraint_vertex::ConstraintVertex;
5use crate::type_aliases::type_id::TypeId;
6use crate::type_aliases::type_pack_id::TypePackId;
7use crate::type_aliases::type_pack_ids::TypePackIds;
8
9impl ConstraintGraph {
10 pub fn copy_dependencies_of_type_id(&mut self, source: TypeId, target: TypeId) {
11 let source_dependencies = self.find_dependency_list(ConstraintVertex::V0(source));
12 let mut mutated_types = TypeIds::type_ids();
13 let mut mutated_type_packs = TypePackIds::new(core::ptr::null_mut());
14
15 let _rci =
16 ReferenceCountInitializer::reference_count_initializer_reference_count_initializer(
17 &mut mutated_types as *mut TypeIds,
18 &mut mutated_type_packs as *mut TypePackIds,
19 );
20
21 self.copy_dependencies_to_reachable_types(
22 None,
23 source_dependencies,
24 mutated_types,
25 mutated_type_packs,
26 );
27
28 let _ = target;
29 }
30
31 pub fn copy_dependencies_of_type_pack_id(&mut self, source: TypePackId, target: TypePackId) {
32 let source_dependencies = self.find_dependency_list(ConstraintVertex::V1(source));
33 let mut mutated_types = TypeIds::type_ids();
34 let mut mutated_type_packs = TypePackIds::new(core::ptr::null_mut());
35
36 let _rci =
37 ReferenceCountInitializer::reference_count_initializer_reference_count_initializer(
38 &mut mutated_types as *mut TypeIds,
39 &mut mutated_type_packs as *mut TypePackIds,
40 );
41
42 self.copy_dependencies_to_reachable_types(
43 None,
44 source_dependencies,
45 mutated_types,
46 mutated_type_packs,
47 );
48
49 let _ = target;
50 }
51}