aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/src/package
diff options
context:
space:
mode:
Diffstat (limited to 'crates/shirabe/src/package')
-rw-r--r--crates/shirabe/src/package/handle.rs48
-rw-r--r--crates/shirabe/src/package/loader/validating_array_loader.rs13
-rw-r--r--crates/shirabe/src/package/package.rs3
3 files changed, 35 insertions, 29 deletions
diff --git a/crates/shirabe/src/package/handle.rs b/crates/shirabe/src/package/handle.rs
index c1db49c1..2b23a8c2 100644
--- a/crates/shirabe/src/package/handle.rs
+++ b/crates/shirabe/src/package/handle.rs
@@ -7,8 +7,6 @@ use crate::package::{
AliasPackage, BasePackage, CompleteAliasPackage, CompletePackage, CompletePackageInterface,
Package, PackageInterface, RootAliasPackage, RootPackage, RootPackageInterface,
};
-use std::cell::RefCell;
-use std::rc::Rc;
/// Any package type.
#[derive(Debug, Clone)]
@@ -192,7 +190,7 @@ impl AnyPackage {
// parent::__clone();
// $this->aliasOf = clone $this->aliasOf;
let new_alias_of_inner = p.alias_of.0.borrow().dup();
- let new_alias_of_rc = Rc::new(RefCell::new(new_alias_of_inner));
+ let new_alias_of_rc = std::rc::Rc::new(std::cell::RefCell::new(new_alias_of_inner));
let new_root = RootPackageHandle(new_alias_of_rc.clone());
let new_complete = CompletePackageHandle(new_alias_of_rc.clone());
let new_pkg = PackageHandle(new_alias_of_rc);
@@ -1361,7 +1359,7 @@ macro_rules! impl_handle_upcast {
/// Shared reference to any package. Corresponds to PHP `PackageInterface`.
#[derive(Debug, Clone)]
-pub struct PackageInterfaceHandle(Rc<RefCell<AnyPackage>>);
+pub struct PackageInterfaceHandle(std::rc::Rc<std::cell::RefCell<AnyPackage>>);
/// Shared reference to any package. Corresponds to PHP `BasePackage`.
/// It is exactly the same as `PackageInterface` in Shirabe. It is only for mirroing PHP type
@@ -1370,35 +1368,35 @@ pub type BasePackageHandle = PackageInterfaceHandle;
/// Shared reference to a complete package. Corresponds to PHP `CompletePackageInterface`.
#[derive(Debug, Clone)]
-pub struct CompletePackageInterfaceHandle(Rc<RefCell<AnyPackage>>);
+pub struct CompletePackageInterfaceHandle(std::rc::Rc<std::cell::RefCell<AnyPackage>>);
/// Shared reference to a root package. Corresponds to PHP `RootPackageInterface`.
#[derive(Debug, Clone)]
-pub struct RootPackageInterfaceHandle(Rc<RefCell<AnyPackage>>);
+pub struct RootPackageInterfaceHandle(std::rc::Rc<std::cell::RefCell<AnyPackage>>);
/// Shared reference to a real (non-alias) package. Corresponds to PHP `Package`.
#[derive(Debug, Clone)]
-pub struct PackageHandle(Rc<RefCell<AnyPackage>>);
+pub struct PackageHandle(std::rc::Rc<std::cell::RefCell<AnyPackage>>);
/// Shared reference to a real complete package. Corresponds to PHP `CompletePackage`.
#[derive(Debug, Clone)]
-pub struct CompletePackageHandle(Rc<RefCell<AnyPackage>>);
+pub struct CompletePackageHandle(std::rc::Rc<std::cell::RefCell<AnyPackage>>);
/// Shared reference to a real root package. Corresponds to PHP `RootPackage`.
#[derive(Debug, Clone)]
-pub struct RootPackageHandle(Rc<RefCell<AnyPackage>>);
+pub struct RootPackageHandle(std::rc::Rc<std::cell::RefCell<AnyPackage>>);
/// Shared reference to an alias package. Corresponds to PHP `AliasPackage`.
#[derive(Debug, Clone)]
-pub struct AliasPackageHandle(Rc<RefCell<AnyPackage>>);
+pub struct AliasPackageHandle(std::rc::Rc<std::cell::RefCell<AnyPackage>>);
/// Shared reference to a complete alias package. Corresponds to PHP `CompleteAliasPackage`.
#[derive(Debug, Clone)]
-pub struct CompleteAliasPackageHandle(Rc<RefCell<AnyPackage>>);
+pub struct CompleteAliasPackageHandle(std::rc::Rc<std::cell::RefCell<AnyPackage>>);
/// Shared reference to a root alias package. Corresponds to PHP `RootAliasPackage`.
#[derive(Debug, Clone)]
-pub struct RootAliasPackageHandle(Rc<RefCell<AnyPackage>>);
+pub struct RootAliasPackageHandle(std::rc::Rc<std::cell::RefCell<AnyPackage>>);
impl_handle_common!(PackageInterfaceHandle);
impl_handle_common!(CompletePackageInterfaceHandle);
@@ -1552,7 +1550,9 @@ impl PackageInterfaceHandle {
impl PackageHandle {
pub fn from_package(package: Package) -> Self {
- Self(Rc::new(RefCell::new(AnyPackage::Package(package))))
+ Self(std::rc::Rc::new(std::cell::RefCell::new(
+ AnyPackage::Package(package),
+ )))
}
pub fn new(name: String, version: String, pretty_version: String) -> Self {
@@ -1562,7 +1562,9 @@ impl PackageHandle {
impl CompletePackageHandle {
pub fn from_complete_package(package: CompletePackage) -> Self {
- Self(Rc::new(RefCell::new(AnyPackage::CompletePackage(package))))
+ Self(std::rc::Rc::new(std::cell::RefCell::new(
+ AnyPackage::CompletePackage(package),
+ )))
}
pub fn new(name: String, version: String, pretty_version: String) -> Self {
@@ -1572,7 +1574,9 @@ impl CompletePackageHandle {
impl RootPackageHandle {
pub fn from_root_package(package: RootPackage) -> Self {
- Self(Rc::new(RefCell::new(AnyPackage::RootPackage(package))))
+ Self(std::rc::Rc::new(std::cell::RefCell::new(
+ AnyPackage::RootPackage(package),
+ )))
}
pub fn new(name: String, version: String, pretty_version: String) -> Self {
@@ -1589,7 +1593,9 @@ impl RootPackageHandle {
impl AliasPackageHandle {
pub fn from_alias_package(package: AliasPackage) -> Self {
- Self(Rc::new(RefCell::new(AnyPackage::AliasPackage(package))))
+ Self(std::rc::Rc::new(std::cell::RefCell::new(
+ AnyPackage::AliasPackage(package),
+ )))
}
pub fn new(alias_of: PackageHandle, version: String, pretty_version: String) -> Self {
@@ -1636,9 +1642,9 @@ impl AliasPackageHandle {
impl CompleteAliasPackageHandle {
pub fn from_complete_alias_package(package: CompleteAliasPackage) -> Self {
- Self(Rc::new(RefCell::new(AnyPackage::CompleteAliasPackage(
- package,
- ))))
+ Self(std::rc::Rc::new(std::cell::RefCell::new(
+ AnyPackage::CompleteAliasPackage(package),
+ )))
}
pub fn new(alias_of: CompletePackageHandle, version: String, pretty_version: String) -> Self {
@@ -1669,7 +1675,9 @@ impl CompleteAliasPackageHandle {
impl RootAliasPackageHandle {
pub fn from_root_alias_package(package: RootAliasPackage) -> Self {
- Self(Rc::new(RefCell::new(AnyPackage::RootAliasPackage(package))))
+ Self(std::rc::Rc::new(std::cell::RefCell::new(
+ AnyPackage::RootAliasPackage(package),
+ )))
}
pub fn new(alias_of: RootPackageHandle, version: String, pretty_version: String) -> Self {
diff --git a/crates/shirabe/src/package/loader/validating_array_loader.rs b/crates/shirabe/src/package/loader/validating_array_loader.rs
index 3250f011..4d7965f8 100644
--- a/crates/shirabe/src/package/loader/validating_array_loader.rs
+++ b/crates/shirabe/src/package/loader/validating_array_loader.rs
@@ -18,7 +18,6 @@ use shirabe_semver::Intervals;
use shirabe_semver::constraint::AnyConstraint;
use shirabe_semver::constraint::SimpleConstraint;
use shirabe_spdx_licenses::SpdxLicenses;
-use std::cell::RefCell;
#[derive(Debug)]
pub struct ValidatingArrayLoader {
@@ -26,9 +25,9 @@ pub struct ValidatingArrayLoader {
version_parser: VersionParser,
// RefCell: `load` implements `LoaderInterface`, whose signature takes `&self`, but PHP's
// implementation freely mutates these as scratch state for the duration of a single call.
- errors: RefCell<Vec<String>>,
- warnings: RefCell<Vec<String>>,
- config: RefCell<IndexMap<String, PhpMixed>>,
+ errors: std::cell::RefCell<Vec<String>>,
+ warnings: std::cell::RefCell<Vec<String>>,
+ config: std::cell::RefCell<IndexMap<String, PhpMixed>>,
flags: i64,
}
@@ -55,9 +54,9 @@ impl ValidatingArrayLoader {
Self {
loader,
version_parser,
- errors: RefCell::new(Vec::new()),
- warnings: RefCell::new(Vec::new()),
- config: RefCell::new(IndexMap::new()),
+ errors: std::cell::RefCell::new(Vec::new()),
+ warnings: std::cell::RefCell::new(Vec::new()),
+ config: std::cell::RefCell::new(IndexMap::new()),
flags,
}
}
diff --git a/crates/shirabe/src/package/package.rs b/crates/shirabe/src/package/package.rs
index 6eaf348b..ce22b755 100644
--- a/crates/shirabe/src/package/package.rs
+++ b/crates/shirabe/src/package/package.rs
@@ -12,7 +12,6 @@ use chrono::{DateTime, Utc};
use indexmap::{IndexMap, IndexSet};
use shirabe_external_packages::composer::pcre::Preg;
use shirabe_php_shim::{E_USER_DEPRECATED, LogicException, PhpMixed, strpos, trigger_error};
-use std::rc::Rc;
/// Mirror entry, e.g. `['url' => 'https://...', 'preferred' => true]`.
#[derive(Debug, Clone)]
@@ -709,7 +708,7 @@ impl PackageInterface for Package {
}
fn set_repository(&mut self, repository: RepositoryInterfaceHandle) -> anyhow::Result<()> {
if let Some(existing) = self.repository.as_ref().and_then(|w| w.upgrade())
- && !Rc::ptr_eq(&existing, repository.as_rc())
+ && !std::rc::Rc::ptr_eq(&existing, repository.as_rc())
{
return Err(LogicException {
message: "A package can only be added to one repository".to_string(),