#[derive(Default)]
pub struct ActorOutputBuilder {
capacity: Vec<usize>,
bootstrap: bool,
}
impl ActorOutputBuilder {
pub fn new(n: usize) -> Self {
Self {
capacity: vec![1; n],
..Default::default()
}
}
pub fn capacity(&self) -> &[usize] {
self.capacity.as_slice()
}
pub fn is_bootstrap(&self) -> bool {
self.bootstrap
}
pub fn unbounded(&mut self) {
self.capacity = vec![usize::MAX; self.capacity.len()];
}
pub fn bootstrap(&mut self) {
self.bootstrap = true;
}
pub fn multiplex(&mut self, n: usize) {
self.capacity = vec![self.capacity[0]; n];
}
}