Expand description
§ups
Rust implementation of a UPS Patcher
§Usage
§Apply UPS patch:
use ups::UpsPatch;
use std::fs::File;
use std::io::{Read, Write};
//Load the contents of the source and patch files
let mut source_file_content: Vec<u8> = vec![];
let mut patch_file_content: Vec<u8> = vec![];
let mut source_file = File::open("path/to/source/file")?;
source_file.read_to_end(&mut source_file_content);
let mut patch_file = File::open("path/to/patch/file")?;
patch_file.read_to_end(&mut patch_file_content);
//Apply the patch
let patch = UpsPatch::load(&patch_file_content)?;
let patched_file_content = patch.apply(&source_file_content)?;
//Write the target to a file
let mut target_file = File::open("path/to/target/file")?;
target_file.write_all(&*patched_file_content);
§Create UPS Patch
use ups::UpsPatch;
use std::fs::File;
use std::io::{Read, Write};
//Load the contents of the source and patch files
let mut source_file_content: Vec<u8> = vec![];
let mut target_file_content: Vec<u8> = vec![];
let mut source_file = File::open("path/to/source/file")?;
source_file.read_to_end(&mut source_file_content);
let mut target_file = File::open("path/to/patch/file")?;
target_file.read_to_end(&mut target_file_content);
//Create the UpsPatch
let patch = UpsPatch::create(&source_file_content, &target_file_content);
//Write the patch to a file
let patch_file_content = patch.get_patch_file_contents();
let mut patch_file = File::open("path/to/target/file")?;
patch_file.write_all(&patch_file_content);
Structs§
- UpsPatch
- Represents a ups patch
Enums§
- Apply
Error - Errors that happen when applying a patch to a file
- Create
Error - Errors that happen when creating a file from source and target files
- Load
Error - Errors that happen when loading an already made patch
- UpsError
- Error type returned when something goes wrong