union/
union.rs

1
2
3extern crate cluExtIO;
4
5use std::io::Error;
6use std::io::Write;
7use cluExtIO::UnionWriteConst;
8use std::fs::File;
9
10pub fn main() -> Result<(), Error> {
11
12     let file1 = File::create("/tmp/1.out")?;
13     //file1 - `Write trait`
14
15     let file2 = File::create("/tmp/2.out")?;
16     //file2 - `Write trait`
17
18     let write = file1.union(file2);
19     //UnionWrite - `FILE1+FILE2`
20
21
22     my_function(write)
23}
24
25fn my_function<W: Write>(mut w: W) -> Result<(), Error> {
26     w.write_fmt(format_args!("#@{} {}\n", 1, "Test"))?;
27     w.write_fmt(format_args!("#@{} {}\n", 2, "MyString"))?;
28     
29     w.write_fmt(format_args!("#@{} {}\n", 3, "MyString"))
30}
31