Acme-InputRecordSeparatorIsRegexp

 view release on metacpan or  search on metacpan

lib/Acme/InputRecordSeparatorIsRegexp.pm  view on Meta::CPAN

CONTRIBUTOR WILL BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, OR
CONSEQUENTIAL DAMAGES ARISING IN ANY WAY OUT OF THE USE OF THE PACKAGE,
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


=cut

tied object members

    handle           => *
    buffered_records => []
    buffer           => $
    rs               => $
    bufsize          => $
  X maxrecsize       => $

    autochomp        => bool

private methods

    _populate_buffer
    _split


test plan:

    read methods
    ------------
    READLINE
        scalar context
        list context
    READ
        with and without offset
        length < = > buffer allocated
        before and after populate buffer (i.e., after scalar READLINE)
    GETC
        with and without populated buffer (after SCALAR READLINE)
        at eof
    EOF
        with buffer populated

    SEEK & TELL
        move around, keep reading

    write methods
    -------------
    PRINT, PRINTF, WRITE (syswrite)

    misc methods
    ------------
    FILENO
    BINMODE
    OPEN

    data sources
    ------------
    regular file in < mode
    piped input? socket?
    regular file in <+ mode
    regular file in >>+ mode
    DATA filehandle
    in memory filehandle
    mock handle already tied to something else?

test data:
    data with random, different line endings (\n, \r, \r\n)

    random capital letters, split on ..., I dunno, [A-Z][XY]

    join a sequence of integers, split on 120|12|345|
    join a sequence of integers, split on 12|120|345|

TODO

    test, doc, release can_use_lookbehind



( run in 0.890 second using v1.01-cache-2.11-cpan-cdf2f3d4e48 )