add sprout::string_ref
support conversion array-like container iterator to pointer