blob: 4dd27b170139334aeeb9570cf3d90fd6a9a86d42 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
//! ref: composer/src/Composer/DependencyResolver/LocalRepoTransaction.php
use super::transaction::Transaction;
use crate::repository::installed_repository_interface::InstalledRepositoryInterface;
use crate::repository::repository_interface::RepositoryInterface;
#[derive(Debug)]
pub struct LocalRepoTransaction {
inner: Transaction,
}
impl LocalRepoTransaction {
pub fn new(
locked_repository: &dyn RepositoryInterface,
local_repository: &dyn InstalledRepositoryInterface,
) -> Self {
// TODO(phase-b): RepositoryInterface::get_packages returns Box<dyn BasePackage>
// but Transaction::new wants Box<dyn PackageInterface>. Upcast each via PackageInterface
// trait once a `into_package_interface` helper is added.
let _ = (locked_repository, local_repository);
Self {
inner: Transaction::new(Vec::new(), Vec::new()),
}
}
pub fn get_operations(
&self,
) -> Vec<Box<dyn crate::dependency_resolver::operation::operation_interface::OperationInterface>>
{
// TODO(phase-b): delegate to inner transaction once operations are typed.
Vec::new()
}
}
|