protected CreoleElementProcessor(CreoleParserContext context, TokenRange <CreoleTokenCode> tokens) { Context = context; _tokens = tokens; _token = tokens.GetEnumerator(); _tokenHasValue = _token.MoveNext(); }
private CreoleRichTextElementProcessor _GetHyperlinkBaseElementProcessor(CreoleParserContext contenxt, TokenRange <CreoleTokenCode> tokens) => new CreoleLineBreakElementProcessor( _context, tokens, new CreoleImageElementProcessor( _context, tokens, new CreoleCodeElementProcessor( _context, tokens) ) );
private CreoleRichTextElementProcessor(CreoleParserContext context, TokenRange <CreoleTokenCode> tokens, ICreoleRichTextElementDataIterator elementIterator) { _tokens = tokens; Context = context; _element = elementIterator; if (_element != null && _element.MoveNext()) { _token = _tokens.SubRange(_startIndex, (_element.Current.StartIndex - _startIndex)).GetEnumerator(); _startIndex = _element.Current.EndIndex; } else { _element?.Dispose(); _element = null; _token = _tokens.GetEnumerator(); _startIndex = _tokens.Count; } }
private IElementDataIterator _GetStyleElementIterator(CreoleParserContext context, TokenRange <CreoleTokenCode> tokens, IEnumerable <CreoleRichTextElementData> baseElementsData, IEnumerable <CreoleRichTextElementType> excludedElementTypes) { var processors = new List <IElementDataIterator>(); if (excludedElementTypes == null) { foreach (var styleElementFactory in _styleElementFactories) { var elementType = styleElementFactory.Key; processors.Add(new ElementProcessorFilterIterator(styleElementFactory.Value(_context, tokens, baseElementsData), elementType)); } } else { foreach (var styleElementFactory in _styleElementFactories) { var elementType = styleElementFactory.Key; if (!_Contains(excludedElementTypes, elementType)) { processors.Add(new ElementProcessorFilterIterator(styleElementFactory.Value(_context, tokens, baseElementsData), elementType)); } } } IElementDataIterator styleElementIterator = null; using (var processor = processors.GetEnumerator()) if (processor.MoveNext()) { styleElementIterator = processor.Current; while (processor.MoveNext()) { styleElementIterator = new MergeElementDataIterator(styleElementIterator, processor.Current); } } return(styleElementIterator); }
internal CreoleHeadingElementProcessor(CreoleParserContext context, TokenRange <CreoleTokenCode> tokens) : base(context, tokens) { }
public CreoleListElementProcessor(CreoleParserContext context, TokenRange <CreoleTokenCode> tokens) : base(context, tokens) { }
internal CreolePluginElementProcessor(CreoleParserContext context, TokenRange <CreoleTokenCode> tokens, CreoleRichTextElementProcessor baseElementProcessor) : base(context, tokens, baseElementProcessor) { }
internal CreoleRichTextElementProcessor(CreoleParserContext context, TokenRange <CreoleTokenCode> tokens, IEnumerable <CreoleRichTextElementData> elements) : this(context, tokens, (elements != null ? new CreoleRichTextElementDataCollectionAdapter(elements) : null)) { }
internal CreoleRichTextElementProcessor(CreoleParserContext context, TokenRange <CreoleTokenCode> tokens, CreoleRichTextElementProcessor elementProcessor) : this(context, tokens, (elementProcessor != null ? new CreoleRichTextElementProcessorIteratorAdapter(elementProcessor) : null)) { }
internal CreoleRichTextElementProcessor(CreoleParserContext context, TokenRange <CreoleTokenCode> tokens) : this(context, tokens, elementIterator : null) { }
internal CreoleHorizontalRuleElementProcessor(CreoleParserContext context, TokenRange <CreoleTokenCode> tokens) : base(context, tokens) { }
protected CreoleUrlElementProcessor(CreoleParserContext context, TokenRange <CreoleTokenCode> tokens) : base(context, tokens) { }
private IElementDataIterator _GetStyleElementIterator(CreoleParserContext context, TokenRange <CreoleTokenCode> tokens, IEnumerable <CreoleRichTextElementData> baseElementsData) => _GetStyleElementIterator(context, tokens, baseElementsData, null);
internal CreoleRichTextProcessor(CreoleParserContext context) { _context = context; }
internal CreoleStyleElementProcessor(CreoleParserContext context, TokenRange <CreoleTokenCode> tokens, IEnumerable <CreoleRichTextElementData> baseElements) : base(context, tokens, baseElements) { }
internal CreoleInlineHyperlinkProcessor(CreoleParserContext context, TokenRange <CreoleTokenCode> tokens) : base(context, tokens) { }
protected CreoleUrlElementProcessor(CreoleParserContext context, TokenRange <CreoleTokenCode> tokens, CreoleRichTextElementProcessor baseElementProcessor) : base(context, tokens, baseElementProcessor) { }