   # `this` object.
   skip: (length, @_callback) ->
     # Create a bogus pattern to enter the parse loop where the stream is fed in
-    # the skipping branch. The length is passed to the callback simply because
-    # the parse loop expects there to be a field.
+    # the skipping branch.
     @_pattern      = [ {} ]
     @_terminated   = true
     @_index        = 0

      # hit the terminator, and we do not have a maximum size to fill, then
      # terminate by setting up the array to terminate.
      #
      # A maximum length value means to repeat until the terminator, but a
      # specific length value means that the zero terminated string occupies a
      # field that has a fixed length, so we need to skip the used bytes.
      if not @_terminated
        if @_terminator is value
          @_terminated = true

        @_nextValue()

      # Otherwise, we've got a complete field value, either a JavaScript
      # primitive or raw bytes as an array.
      else

        # If we're not skipping, push the field value after running it through
        # the pipeline.
        if field.endianness isnt "x"

          # If the field is a bit packed field, unpack the values and push them
          # onto the field list.
          if packing = field.packing
            length  = field.bits
            for pack, i in packing
