import Accumulator from 'ex-stream/Accumulator';
Accumulate stream data by charging and release it on stream finish
import Accumulator from 'ex-stream/Accumulator';
import { log } from 'ex-stream/LogStream';
class Concat extends Accumulator {
data = '';
_charge(data, enc, next) {
this.data += data;
next();
}
_release() {
try {
return this.data
} catch(e) {
this.data = '';
}
}
}
const concat = new Concat();
concat.pipe(log()); // 'abcdefg'
concat.write('a');
concat.write('b');
concat.write('c');
concat.write('d');
concat.write('e');
concat.write('f');
concat.end('g');
Parameters:
options
:Object=
- Stream options
Class is abstract
_charge(data: *, encoding: String, next: Function)
Charging stream
Parameters:
data
:*
- charged dataencoding
:String
- data encodingnext
:Function
- pass function
_release()
Release charged data
Returns: *
- left data