mirror of
https://codeberg.org/demostf/edit.git
synced 2026-06-03 11:54:07 +02:00
builder updates
This commit is contained in:
parent
e734324f37
commit
01b74e3f7b
3 changed files with 17 additions and 18 deletions
15
README.md
15
README.md
|
|
@ -25,14 +25,13 @@ See `edit --help` for the available options.
|
||||||
use edit::{edit, EditOptions, TickRange};
|
use edit::{edit, EditOptions, TickRange};
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
let options = EditOptions {
|
let options = EditOptions::builder()
|
||||||
unlock_pov: true,
|
.unlock_pov(true)
|
||||||
cut: Some(TickRange {
|
.remove_invalid_deletes(self.remove_invalid_deletes)
|
||||||
from: 1000.into(),
|
.cut(TickRange {
|
||||||
to: 2000.into(),
|
from: from.into(),
|
||||||
}),
|
to: to.into(),
|
||||||
..EditOptions::default()
|
}).build();
|
||||||
};
|
|
||||||
let input = fs::read("in.demo").unwrap();
|
let input = fs::read("in.demo").unwrap();
|
||||||
let output = edit(&input, options);
|
let output = edit(&input, options);
|
||||||
fs::write("out.dem", output).unwrap();
|
fs::write("out.dem", output).unwrap();
|
||||||
|
|
|
||||||
|
|
@ -19,17 +19,17 @@ struct Args {
|
||||||
|
|
||||||
impl Args {
|
impl Args {
|
||||||
fn get_options(&self) -> EditOptions {
|
fn get_options(&self) -> EditOptions {
|
||||||
EditOptions::builder()
|
let builder = EditOptions::builder()
|
||||||
.unlock_pov(self.unlock_pov)
|
.unlock_pov(self.unlock_pov)
|
||||||
.remove_invalid_deletes(self.remove_invalid_deletes)
|
.remove_invalid_deletes(self.remove_invalid_deletes);
|
||||||
.cut(if let (Some(from), Some(to)) = (self.from, self.to) {
|
if let (Some(from), Some(to)) = (self.from, self.to) {
|
||||||
Some(TickRange {
|
builder.cut(TickRange {
|
||||||
from: from.into(),
|
from: from.into(),
|
||||||
to: to.into(),
|
to: to.into(),
|
||||||
})
|
|
||||||
} else {
|
|
||||||
None
|
|
||||||
}).build()
|
}).build()
|
||||||
|
} else {
|
||||||
|
builder.build()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,7 @@ pub struct EditOptions {
|
||||||
#[cfg_attr(feature = "cli", builder(default))]
|
#[cfg_attr(feature = "cli", builder(default))]
|
||||||
pub remove_conditions: Vec<CondOptions>,
|
pub remove_conditions: Vec<CondOptions>,
|
||||||
#[serde(default)]
|
#[serde(default)]
|
||||||
#[cfg_attr(feature = "cli", builder(default))]
|
#[cfg_attr(feature = "cli", builder(default, setter(strip_option)))]
|
||||||
pub cut: Option<TickRange>,
|
pub cut: Option<TickRange>,
|
||||||
#[serde(default)]
|
#[serde(default)]
|
||||||
#[cfg_attr(feature = "cli", builder(default))]
|
#[cfg_attr(feature = "cli", builder(default))]
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue