aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--crates/shirabe/src/package/archiver/composer_exclude_filter.rs15
1 files changed, 15 insertions, 0 deletions
diff --git a/crates/shirabe/src/package/archiver/composer_exclude_filter.rs b/crates/shirabe/src/package/archiver/composer_exclude_filter.rs
index cb57308..b9a32f4 100644
--- a/crates/shirabe/src/package/archiver/composer_exclude_filter.rs
+++ b/crates/shirabe/src/package/archiver/composer_exclude_filter.rs
@@ -1 +1,16 @@
//! ref: composer/src/Composer/Package/Archiver/ComposerExcludeFilter.php
+
+use super::base_exclude_filter::BaseExcludeFilter;
+
+#[derive(Debug)]
+pub struct ComposerExcludeFilter {
+ inner: BaseExcludeFilter,
+}
+
+impl ComposerExcludeFilter {
+ pub fn new(source_path: String, exclude_rules: Vec<String>) -> Self {
+ let mut inner = BaseExcludeFilter::new(source_path);
+ inner.exclude_patterns = inner.generate_patterns(exclude_rules);
+ Self { inner }
+ }
+}