fish-shell/wcstringutil.h
Kevin Ballard 8f8c4cdd17 Implement new read --null flag
The `--null` flag to `read` makes it split incoming lines on NUL instead
of newlines. This is intended for processing the output of a command
that uses NUL separators (such as `find -print0`).

Fixes #1694.
2014-09-21 19:27:26 -07:00

30 lines
877 B
C++

/** \file wcstringutil.h
Helper functions for working with wcstring
*/
#ifndef FISH_WCSTRINGUTIL_H
#define FISH_WCSTRINGUTIL_H
#include <utility>
#include "common.h"
/**
typedef that represents a range in a wcstring.
The first element is the location, the second is the count.
*/
typedef std::pair<wcstring::size_type, wcstring::size_type> wcstring_range;
/**
wcstring equivalent of wcstok(). Supports NUL.
For convenience and wcstok() compatibility, the first character of each
token separator is replaced with NUL.
Returns a pair of (pos, count).
Returns (npos, npos) when it's done.
Returns (pos, npos) when the token is already known to be the final token.
Note that the final token may not necessarily return (pos, npos).
*/
wcstring_range wcstring_tok(wcstring& str, const wcstring &needle, wcstring_range last = wcstring_range(0,0));
#endif