Class RollingCharBuffer
Acts like a forever growing char[] as you read characters into it from the provided reader, but internally it uses a circular buffer to only hold the characters that haven't been freed yet. This is like a PushbackReader, except you don't have to specify up-front the max size of the buffer, but you do have to periodically call FreeBefore(Int32).
Inheritance
Inherited Members
Assembly: Lucene.Net.Analysis.Common.dll
Syntax
[Serializable]
public sealed class RollingCharBuffer
Methods
Name | Description |
---|---|
FreeBefore(Int32) | Call this to notify us that no chars before this absolute position are needed anymore. |
Get(Int32) | Absolute position read. NOTE: pos must not jump ahead by more than 1! Ie, it's OK to read arbitarily far back (just not prior to the last FreeBefore(Int32), but NOT ok to read arbitrarily far ahead. Returns -1 if you hit EOF. |
Get(Int32, Int32) | |
Reset(TextReader) | Clear array and switch to new reader. |