        # File lib/protocols/buftok.rb, line 26
    26:   def initialize(delimiter = "\n", size_limit = nil)
    27:     # Store the specified delimiter
    28:     @delimiter = delimiter
    29:
    30:     # Store the specified size limitation
    31:     @size_limit = size_limit
    32:
    33:     # The input buffer is stored as an array.  This is by far the most efficient
    34:     # approach given language constraints (in C a linked list would be a more
    35:     # appropriate data structure).  Segments of input data are stored in a list
    36:     # which is only joined when a token is reached, substantially reducing the
    37:     # number of objects required for the operation.
    38:     @input = []
    39:
    40:     # Size of the input buffer
    41:     @input_size = 0
    42:   end