code: def after
        return to_enum(__callee__) unless block_given?
        return if chain_tail?
  
        item = self.next
  
        loop do
          yield item
          item = item.next
        end
      end
docs: Iterates over each item after this. If a block is not given an enumerator
   is returned.
  
   Note that raising a StopIteraion inside the block will cause the loop to
   silently stop the iteration early.