extends %IO.I.CharacterStream, %IO.I.TranslationDevice
method Attach(pDevice As %String = $IO, Output pSC As %Status)
Attach to the named open Device or to the current Device by default
classmethod AttachNew(pDevice As %String = $IO, Output pSC As %Status)
Attach the current $IO device to an instance of this class
method CharEncodingSet(pCharEncoding As %String)
This is a Set accessor method for the CharEncoding property.
method Close(Output pSC As %Status)
Close the current stream
This is a Get accessor method for the DefaultFlushOnWrite property.
method Flush(Output pSC As %Status)
Ensure that any data already written to the stream buffer are actually sent to the stream.
method Read(pMaxReadLen As %Integer, ByRef pTimeout As %Numeric = -1, Output pSC As %Status)
Read until pMaxReadLen chars are gotten or pTimeout expires
On return, if pTimeout is unchanged it means the full timeout period expired. If the timeout period expired and the returned string is shorter than pMaxReadLen, then AtEnd will be 1.
method ReadLine(pMaxReadLen As %Integer, ByRef pTimeout As %Numeric = -1, Output pSC As %Status, ByRef pLineTerminator As %String = ..LineTerminator)
Read until pMaxReadLen chars are gotten, pTimeout expires, or a LineTerminator character is found.
On return, if pTimeout=0 it means no timeout occurred. If pTimeout=0 and the returned string contains the full pMaxReadLen characters, it means no LineTerminator was encountered yet, even if the following character would be a LineTerminator.
If pTimeout=0 and the returned string is shorter than pMaxReadLen, then either a LineTerminator or the End Of Stream (AtEnd = 1) was encountered.
If pLineTerminator is defined, then the line is read until one of the given characters is encountered. On return, pLineTerminator contains the encountered character(s) if any.
method TranslationTableSet(pTable As %String)
This is a Set accessor method for the TranslationTable property.
method Write(pData As %String = "", pFlush As %Boolean = ..DefaultFlushOnWrite, Output pSC As %Status)
Write pData to the stream buffer. If pFlush is True, ensure that the data are actually sent to the stream.