@@ -11,54 +11,6 @@ use crate::{
1111 Driver ,
1212} ;
1313
14- /// A utility to do buffer-swapping with.
15- #[ derive( Default , Clone ) ]
16- pub ( crate ) struct Buffers {
17- pub src : Vec < u8 > ,
18- pub dest : Vec < u8 > ,
19- }
20-
21- /// A utility to do buffer-swapping with.
22- pub ( crate ) struct BuffersWithSource < ' src , ' bufs > {
23- pub ro_src : Option < & ' src [ u8 ] > ,
24- pub src : & ' bufs mut Vec < u8 > ,
25- pub dest : & ' bufs mut Vec < u8 > ,
26- }
27-
28- impl Buffers {
29- pub fn with_src < ' a , ' src > ( & ' a mut self , src : & ' src [ u8 ] ) -> BuffersWithSource < ' src , ' a > {
30- self . clear ( ) ;
31- BuffersWithSource {
32- ro_src : Some ( src) ,
33- src : & mut self . src ,
34- dest : & mut self . dest ,
35- }
36- }
37- pub fn clear ( & mut self ) {
38- self . src . clear ( ) ;
39- self . dest . clear ( ) ;
40- }
41-
42- pub fn swap ( & mut self ) {
43- std:: mem:: swap ( & mut self . src , & mut self . dest ) ;
44- }
45- }
46-
47- impl BuffersWithSource < ' _ , ' _ > {
48- /// Must be called after every change (i.e. when it's known that `dest` was written.
49- pub fn swap ( & mut self ) {
50- self . ro_src . take ( ) ;
51- std:: mem:: swap ( & mut self . src , & mut self . dest ) ;
52- self . dest . clear ( ) ;
53- }
54- pub fn src_and_dest ( & mut self ) -> ( & [ u8 ] , & mut Vec < u8 > ) {
55- match self . ro_src {
56- Some ( src) => ( src, & mut self . dest ) ,
57- None => ( self . src , & mut self . dest ) ,
58- }
59- }
60- }
61-
6214pub ( crate ) struct Configuration < ' a > {
6315 pub ( crate ) driver : Option < & ' a Driver > ,
6416 /// What attributes say about CRLF handling.
0 commit comments