protected internal virtual void ExpandBuff(bool wrapAround)
{
char[] newbuffer = new char[bufsize + 2048];
int[] newbufline = new int[bufsize + 2048];
int[] newbufcolumn = new int[bufsize + 2048];
try
{
if (wrapAround)
{
Array.Copy(buffer, tokenBegin, newbuffer, 0, bufsize - tokenBegin);
Array.Copy(buffer, 0, newbuffer, bufsize - tokenBegin, bufpos);
buffer = newbuffer;
Array.Copy(bufline, tokenBegin, newbufline, 0, bufsize - tokenBegin);
Array.Copy(bufline, 0, newbufline, bufsize - tokenBegin, bufpos);
bufline = newbufline;
Array.Copy(bufcolumn, tokenBegin, newbufcolumn, 0, bufsize - tokenBegin);
Array.Copy(bufcolumn, 0, newbufcolumn, bufsize - tokenBegin, bufpos);
bufcolumn = newbufcolumn;
maxNextCharInd = (bufpos += (bufsize - tokenBegin));
}
else
{
Array.Copy(buffer, tokenBegin, newbuffer, 0, bufsize - tokenBegin);
buffer = newbuffer;
Array.Copy(bufline, tokenBegin, newbufline, 0, bufsize - tokenBegin);
bufline = newbufline;
Array.Copy(bufcolumn, tokenBegin, newbufcolumn, 0, bufsize - tokenBegin);
bufcolumn = newbufcolumn;
maxNextCharInd = (bufpos -= tokenBegin);
}
}
catch (System.Exception t)
{
throw new System.ApplicationException(t.Message);
}
bufsize += 2048;
available = bufsize;
tokenBegin = 0;
}