// Token: 0x06003F0D RID: 16141 RVA: 0x0011FAFC File Offset: 0x0011DCFC
        internal override int EnumTextSegments(char[] text, int count, SpellerInteropBase.EnumSentencesCallback sentenceCallback, SpellerInteropBase.EnumTextSegmentsCallback segmentCallback, object data)
        {
            if (this._isDisposed)
            {
                return(0);
            }
            WordsSegmenter wordsSegmenter      = this.CurrentWordBreaker ?? this.DefaultCultureWordBreaker;
            SpellChecker   currentSpellChecker = this.CurrentSpellChecker;
            bool           flag = this._mode.HasFlag(SpellerInteropBase.SpellerMode.SpellingErrors) || this._mode.HasFlag(SpellerInteropBase.SpellerMode.Suggestions);

            if (wordsSegmenter == null || (flag && currentSpellChecker == null))
            {
                return(0);
            }
            int  num   = 0;
            bool flag2 = true;

            foreach (string sentence in new string[]
            {
                string.Join <char>(string.Empty, text)
            })
            {
                WinRTSpellerInterop.SpellerSentence spellerSentence = new WinRTSpellerInterop.SpellerSentence(sentence, wordsSegmenter, this.CurrentSpellChecker, this);
                num += spellerSentence.Segments.Count;
                if (segmentCallback != null)
                {
                    int num2 = 0;
                    while (flag2 && num2 < spellerSentence.Segments.Count)
                    {
                        flag2 = segmentCallback(spellerSentence.Segments[num2], data);
                        num2++;
                    }
                }
                if (sentenceCallback != null)
                {
                    flag2 = sentenceCallback(spellerSentence, data);
                }
                if (!flag2)
                {
                    break;
                }
            }
            return(num);
        }
Beispiel #2
0
 internal abstract int EnumTextSegments(char[] text, int count, SpellerInteropBase.EnumSentencesCallback sentenceCallback, SpellerInteropBase.EnumTextSegmentsCallback segmentCallback, object data);