public SeparatedPosition(SeparatedTextProvider provider)
 {
     _provider           = provider;
     _currentSubProvider = 0;
     if (provider._subproviders.Count > 0)
     {
         _currentPosition = provider._subproviders[0].GetStartPosition();
     }
     else
     {
         _currentPosition = EndPosition.Instance;
     }
 }
 private SeparatedPosition(SeparatedTextProvider provider, int currentProvider, ITextPosition currentPosition)
 {
     _provider           = provider;
     _currentSubProvider = currentProvider;
     _currentPosition    = currentPosition;
 }