5 has id => (is => 'ro', required => 1);
7 has bound_stream => (is => 'ro');
9 has bound_value => (is => 'lazy', predicate => 1, clearer => 1, builder => sub {
10 $_[0]->bound_stream->next;
15 $self->has_bound_value || $self->bound_stream;
19 my ($self, $stream) = @_;
20 $self->new(%$self, bound_stream => $stream);
24 my ($self, $stream) = @_;
25 $self->new(%$self, bound_value => $stream);