/// <summary>
 /// Copy constructor with a start symbol and a first CodeElement.
 /// </summary>
 /// <param name="start">From which to copy the Tokenizer in the same state.</param>
 /// <param name="firstCE">The first code elemnt</param>
 /// <param name="from">From which to copy the Tokenizer in the same state.</param>
 public CodeElementTokenizer(int start, CodeElementTokenizer from, params CodeElement[] firstCE)
 {
     StartToken              = start;
     FirstCodeElements       = firstCE;
     this.CodeElementsLines  = from.CodeElementsLines;
     m_CodeElementsLineIndex = from.m_CodeElementsLineIndex;
     m_CodeElementIndex      = from.m_CodeElementIndex;
     Reset();
 }
 /// <summary>
 /// Copy constructor with a start symbol.
 /// </summary>
 /// <param name="start">From which to copy the Tokenizer in the same state.</param>
 /// <param name="from">From which to copy the Tokenizer in the same state.</param>
 public CodeElementTokenizer(int start, CodeElementTokenizer from) : this(start, from, null)
 {
 }
 /// <summary>
 /// Copy constructor.
 /// </summary>
 /// <param name="from">From which to copy the Tokenizer in the same state.</param>
 public CodeElementTokenizer(CodeElementTokenizer from) : this(-1, from)
 {
 }