mirror of
https://github.com/robbert-vdh/yabridge.git
synced 2026-06-16 00:13:55 +02:00
@@ -0,0 +1,45 @@
|
||||
// yabridge: a Wine VST bridge
|
||||
// Copyright (C) 2020-2021 Robbert van der Helm
|
||||
//
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
//! Handlers for the blacklist subcommands, just to keep `main.rs` clean.
|
||||
|
||||
use anyhow::Result;
|
||||
use std::path::{Path, PathBuf};
|
||||
|
||||
use crate::config::Config;
|
||||
|
||||
/// Add a path to the blacklist. Duplicates get ignord because we're using ordered sets.
|
||||
pub fn add_path(config: &mut Config, path: PathBuf) -> Result<()> {
|
||||
config.blacklist.insert(path);
|
||||
config.write()
|
||||
}
|
||||
|
||||
/// Remove a path from the blacklist. The path is assumed to be part of `config.blacklist`,
|
||||
/// otherwise this is silently ignored.
|
||||
pub fn remove_path(config: &mut Config, path: &Path) -> Result<()> {
|
||||
// We've already verified that this path is in `config.blacklist`
|
||||
config.blacklist.remove(path);
|
||||
config.write()
|
||||
}
|
||||
|
||||
/// List the paths in the blacklist.
|
||||
pub fn list_paths(config: &Config) -> Result<()> {
|
||||
for directory in &config.blacklist {
|
||||
println!("{}", directory.display());
|
||||
}
|
||||
|
||||
Ok(())
|
||||
}
|
||||
Reference in New Issue
Block a user