Использовать String или &str?
===============================

 Я хочу распарсить запрос от браузера . Допустим мне пришел массив байтов и мне надо как то его структуировать .  

Вопрос в том, что лучше использовать, ссылки на данные находящие в массиве или напрямую владеть данными. 

 Решение тут не вполне однозначное.  

  

С одной стороны, гораздо эффективнее было бы таскать ссылки (&str), т.к. их копирование или извлечение ссылки на subslice весьма дёшево. Это позволит создавать и отбрасывать структуры при синтаксическом разборе без оглядки на overhead от владения String.  

  

С другой стороны, используя ссылки, вы обязуете себя обеспечить тот факт, что исходная строка будет жить дольше, чем ваш AST. Это накладывает приличные ограничения на ваш код.  

  

В любом случае, я бы порекомендовал использовать &str. Однако, без кода подсказать, как лучше сохранить исходный String до конца обработки запроса, я не смогу.