Utility functions for data::stream::bulk
version 0.11
use Data::Stream::Bulk::Util qw(array); use namespace::clean; # Wrap a list in L<Data::Stream::Bulk::Array> return bulk(qw(foo bar gorch baz)); # return an empty resultset return nil();
This module exports convenience functions for use with Data::Stream::Bulk.
Sub::Exporter is used to create the \*(C`import\*(C' routine, and all of its aliasing/currying goodness is of course supported.
Creates a new Data::Stream::Bulk::Nil object. Takes no arguments. Creates a new Data::Stream::Bulk::Array wrapping @items. Concatenate several streams together. Returns \*(C`nil\*(C' if no arguments are provided. Calls \*(C`filter\*(C' on $stream with the provided filter. Filter the stream to remove duplicates. Note that memory use may potentially scale to O(k) where k is the number of distinct items, because this is implemented in terms of a seen hash. In the future this will be optimized to be iterative for sorted streams. References are keyed by their refaddr (see \*(L"id\*(R" in Hash::Util::FieldHash).
Yuval Kogman <[email protected]>
This software is copyright (c) 2012 by Yuval Kogman.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.