IStringStream Class Reference

Input from string buffer, using a ISstream. More...

Inheritance diagram for IStringStream:
[legend]
Collaboration diagram for IStringStream:
[legend]

Public Member Functions

 IStringStream (const Foam::string &buffer, streamFormat format=ASCII, versionNumber version=currentVersion, const Foam::string &name="input")
 Construct from string. More...
 
 IStringStream (const char *buffer, streamFormat format=ASCII, versionNumber version=currentVersion, const Foam::string &name="input")
 Construct from char*. More...
 
 IStringStream (const IStringStream &str)
 Construct as copy of content. More...
 
virtual void reset (const std::string &s)
 Reset the input buffer and rewind the stream. More...
 
virtual void print (Ostream &os) const
 Print description to Ostream. More...
 
Istreamoperator() () const
 Return a non-const reference to const Istream. More...
 
- Public Member Functions inherited from StringStreamAllocator< std::istringstream >
Foam::string str () const
 Get the string - as Foam::string rather than std::string. More...
 
void str (const std::string &s)
 Set the string. More...
 
- Public Member Functions inherited from ISstream
 ISstream (std::istream &is, const string &name, streamFormat format=ASCII, versionNumber version=currentVersion, compressionType compression=UNCOMPRESSED)
 Construct as wrapper around std::istream. More...
 
virtual ~ISstream ()=default
 Destructor. More...
 
virtual const fileNamename () const
 Return the name of the stream. More...
 
virtual fileNamename ()
 Return non-const access to the name of the stream. More...
 
virtual ios_base::fmtflags flags () const
 Return flags of output stream. More...
 
ISstreamget (char &c)
 Raw, low-level get character function. More...
 
int peek ()
 Raw, low-level peek function. More...
 
ISstreamgetLine (std::string &str, char delim='\n')
 Raw, low-level getline into a string function. More...
 
ISstreamputback (const char c)
 Raw, low-level putback character function. More...
 
virtual Istreamread (token &t)
 Return next token from stream. More...
 
virtual Istreamread (char &c)
 Read a character. More...
 
virtual Istreamread (word &str)
 Read a word. More...
 
virtual Istreamread (string &str)
 Read a string (including enclosing double-quotes). More...
 
virtual Istreamread (label &val)
 Read a label. More...
 
virtual Istreamread (floatScalar &val)
 Read a floatScalar. More...
 
virtual Istreamread (doubleScalar &val)
 Read a doubleScalar. More...
 
virtual Istreamread (char *buf, std::streamsize count)
 Read binary block. More...
 
virtual IstreamreadRaw (char *data, std::streamsize count)
 Low-level raw binary read. More...
 
virtual bool beginRawRead ()
 Start of low-level raw binary read. More...
 
virtual bool endRawRead ()
 End of low-level raw binary read. More...
 
virtual void rewind ()
 Rewind the stream so that it may be read again. More...
 
virtual ios_base::fmtflags flags (const ios_base::fmtflags flags)
 Set stream flags. More...
 
virtual std::istream & stdStream ()
 Access to underlying std::istream. More...
 
virtual const std::istream & stdStream () const
 Const access to underlying std::istream. More...
 
- Public Member Functions inherited from Istream
 Istream (streamFormat format=ASCII, versionNumber version=currentVersion, compressionType compression=UNCOMPRESSED)
 Construct and set stream status. More...
 
virtual ~Istream ()=default
 Destructor. More...
 
void putBack (const token &tok)
 Put back token. More...
 
bool getBack (token &tok)
 Get the put back token if there is one and return true. More...
 
bool peekBack (token &tok)
 Peek at the put back token without removing it. More...
 
bool readBegin (const char *funcName)
 Begin read of data chunk, starts with '('. More...
 
bool readEnd (const char *funcName)
 End read of data chunk, ends with ')'. More...
 
char readBeginList (const char *funcName)
 Begin read of list data, starts with '(' or '{'. More...
 
char readEndList (const char *funcName)
 End read of list data, ends with ')' or '}'. More...
 
Istreamoperator() () const
 Return a non-const reference to const Istream. More...
 
- Public Member Functions inherited from IOstream
 IOstream (const IOstreamOption option)
 Construct with specified stream option. More...
 
 IOstream (streamFormat format, versionNumber version, compressionType compression=UNCOMPRESSED)
 Construct with format, version. More...
 
virtual ~IOstream ()=default
 Destructor. More...
 
virtual bool check (const char *operation) const
 Check IOstream status for given operation. More...
 
void fatalCheck (const char *operation) const
 Check IOstream status for given operation. More...
 
bool opened () const
 Return true if stream has been opened. More...
 
bool closed () const
 Return true if stream is closed. More...
 
bool good () const
 Return true if next operation might succeed. More...
 
bool eof () const
 Return true if end of input seen. More...
 
bool fail () const
 Return true if next operation will fail. More...
 
bool bad () const
 Return true if stream is corrupted. More...
 
 operator bool () const
 Return true if the stream has not failed. More...
 
bool operator! () const
 Return true if the stream has failed. More...
 
unsigned labelByteSize () const
 The label byte-size associated with the stream. More...
 
unsigned scalarByteSize () const
 The scalar byte-size associated with the stream. More...
 
void setLabelByteSize (unsigned nbytes)
 Set the label byte-size associated with the stream. More...
 
void setScalarByteSize (unsigned nbytes)
 Set the scalar byte-size associated with the stream. More...
 
template<class T = label>
std::enable_if< std::is_integral< T >::value, bool >::type checkLabelSize () const
 
template<class T = scalar>
std::enable_if< std::is_floating_point< T >::value, bool >::type checkScalarSize () const
 
label lineNumber () const
 Const access to the current stream line number. More...
 
labellineNumber ()
 Non-const access to the current stream line number. More...
 
label lineNumber (const label num)
 Set the stream line number. More...
 
void setEof ()
 Set stream to have reached eof. More...
 
void setFail ()
 Set stream to have failed. More...
 
void setBad ()
 Set stream to be bad. More...
 
ios_base::fmtflags setf (const ios_base::fmtflags f)
 Set flags of stream. More...
 
ios_base::fmtflags setf (const ios_base::fmtflags f, const ios_base::fmtflags mask)
 Set flags of given field of stream. More...
 
void unsetf (const ios_base::fmtflags f)
 Unset flags of stream. More...
 
void print (Ostream &os, const int streamState) const
 Print information about the stream state bits. More...
 
InfoProxy< IOstreaminfo () const
 Return info proxy. More...
 
- Public Member Functions inherited from IOstreamOption
 IOstreamOption () noexcept
 Construct null. (default: ASCII, uncompressed, currentVersion) More...
 
 IOstreamOption (streamFormat format) noexcept
 Construct with format. (default: uncompressed, currentVersion) More...
 
 IOstreamOption (streamFormat format, compressionType compression, versionNumber version=currentVersion) noexcept
 Construct with format and compression, optionally with version. More...
 
 IOstreamOption (streamFormat format, versionNumber version, compressionType compression) noexcept
 Construct with format, version, compression. More...
 
streamFormat format () const noexcept
 Get the current stream format. More...
 
streamFormat format (const streamFormat format) noexcept
 Set the stream format. More...
 
streamFormat format (const word &formatName)
 Set the stream format, from string value. More...
 
compressionType compression () const noexcept
 Get the stream compression. More...
 
compressionType compression (const compressionType comp) noexcept
 Set the stream compression. More...
 
compressionType compression (const word &compressionName)
 Set the stream compression, from string value. More...
 
versionNumber version () const noexcept
 Get the stream version. More...
 
versionNumber version (const versionNumber verNum) noexcept
 Set the stream version. More...
 

Additional Inherited Members

- Public Types inherited from IOstream
enum  streamAccess : char { CLOSED = 0, OPENED }
 Enumeration for stream open/closed state. More...
 
- Public Types inherited from IOstreamOption
enum  streamFormat : char { ASCII, BINARY }
 Data format (ascii | binary) More...
 
enum  compressionType : char { UNCOMPRESSED = 0, COMPRESSED }
 Compression treatment (UNCOMPRESSED | COMPRESSED) More...
 
- Static Public Member Functions inherited from IOstream
static unsigned int defaultPrecision ()
 Return the default precision. More...
 
static unsigned int defaultPrecision (unsigned int prec)
 Reset the default precision. More...
 
- Static Public Member Functions inherited from IOstreamOption
static streamFormat formatEnum (const word &formatName)
 The stream format enum corresponding to the string. More...
 
static compressionType compressionEnum (const word &compName)
 The compression enum corresponding to the string. More...
 
- Static Public Attributes inherited from IOstream
static unsigned int precision_
 Default precision. More...
 
- Static Public Attributes inherited from IOstreamOption
static const Enum< streamFormatformatNames
 Stream format names (ascii, binary) More...
 
static const versionNumber originalVersion
 The original version number. More...
 
static const versionNumber currentVersion
 The current version number. More...
 
- Protected Types inherited from StringStreamAllocator< std::istringstream >
typedef std::istringstream stream_type
 The stream type. More...
 
- Protected Member Functions inherited from StringStreamAllocator< std::istringstream >
 StringStreamAllocator ()
 Construct null. More...
 
 StringStreamAllocator (const std::string &buffer)
 Copy construct from string. More...
 
- Protected Member Functions inherited from IOstream
void setOpened ()
 Set stream opened. More...
 
void setClosed ()
 Set stream closed. More...
 
void setState (ios_base::iostate state)
 Set stream state. More...
 
void setGood ()
 Set stream to be good. More...
 
- Protected Attributes inherited from StringStreamAllocator< std::istringstream >
stream_type stream_
 The input/output stream. More...
 
- Protected Attributes inherited from IOstream
streamAccess openClosed_
 
ios_base::iostate ioState_
 
unsigned short labelByteSize_
 The label byte-size (could also be stored as byte) More...
 
unsigned short scalarByteSize_
 The scalar byte-size (could also be stored as byte) More...
 
label lineNumber_
 The file line. More...
 
- Static Protected Attributes inherited from IOstream
static fileName staticName_
 Name for any generic stream - normally treat as readonly. More...
 

Detailed Description

Input from string buffer, using a ISstream.

Definition at line 112 of file StringStream.H.

Constructor & Destructor Documentation

◆ IStringStream() [1/3]

IStringStream ( const Foam::string buffer,
streamFormat  format = ASCII,
versionNumber  version = currentVersion,
const Foam::string name = "input" 
)
inline

Construct from string.

Definition at line 125 of file StringStream.H.

◆ IStringStream() [2/3]

IStringStream ( const char *  buffer,
streamFormat  format = ASCII,
versionNumber  version = currentVersion,
const Foam::string name = "input" 
)
inline

Construct from char*.

Definition at line 139 of file StringStream.H.

◆ IStringStream() [3/3]

IStringStream ( const IStringStream str)
inline

Construct as copy of content.

Definition at line 152 of file StringStream.H.

Member Function Documentation

◆ reset()

virtual void reset ( const std::string &  s)
inlinevirtual

Reset the input buffer and rewind the stream.

Definition at line 162 of file StringStream.H.

References ISstream::rewind(), and StringStreamAllocator< std::istringstream >::str().

Here is the call graph for this function:

◆ print()

void print ( Ostream os) const
virtual

Print description to Ostream.

Reimplemented from ISstream.

Definition at line 32 of file StringStream.C.

References Foam::endl(), ISstream::name(), ISstream::print(), and StringStreamAllocator< std::istringstream >::str().

Here is the call graph for this function:

◆ operator()()

Istream& operator() ( ) const
inline

Return a non-const reference to const Istream.

Needed for read-constructors where the stream argument is temporary.

Definition at line 176 of file StringStream.H.


The documentation for this class was generated from the following files: