WebMarkupMin.Core.GenericHtmlMinifier.Minify C# (CSharp) Метод

Minify() публичный Метод

Minify HTML content
public Minify ( string content, string fileContext, Encoding encoding, bool generateStatistics ) : MarkupMinificationResult
content string HTML content
fileContext string File context
encoding System.Text.Encoding Text encoding
generateStatistics bool Flag for whether to allow generate minification statistics
Результат MarkupMinificationResult
        public MarkupMinificationResult Minify(string content, string fileContext, Encoding encoding,
			bool generateStatistics)
        {
            MinificationStatistics statistics = null;
            string cleanedContent = Utils.RemoveByteOrderMark(content);
            string minifiedContent = string.Empty;
            var errors = new List<MinificationErrorInfo>();
            var warnings = new List<MinificationErrorInfo>();

            lock (_minificationSynchronizer)
            {
                _fileContext = fileContext;
                _encoding = encoding;

                try
                {
                    if (generateStatistics)
                    {
                        statistics = new MinificationStatistics(_encoding);
                        statistics.Init(cleanedContent);
                    }

                    int estimatedCapacity = (int)Math.Floor(cleanedContent.Length * AVERAGE_COMPRESSION_RATIO);
                    _result = StringBuilderPool.GetBuilder(estimatedCapacity);

                    _htmlParser.Parse(cleanedContent);

                    FlushBuffer();

                    if (_errors.Count == 0)
                    {
                        minifiedContent = _result.ToString();

                        if (generateStatistics)
                        {
                            statistics.End(minifiedContent);
                        }
                    }
                }
                catch (MarkupParsingException e)
                {
                    WriteError(LogCategoryConstants.HtmlParsingError, e.Message, _fileContext,
                        e.LineNumber, e.ColumnNumber, e.SourceFragment);
                }
                finally
                {
                    StringBuilderPool.ReleaseBuilder(_result);
                    _buffer.Clear();
                    _tagsWithNotRemovableWhitespaceQueue.Clear();
                    _currentNodeType = HtmlNodeType.Unknown;
                    _currentTag = null;
                    _currentText = string.Empty;

                    errors.AddRange(_errors);
                    warnings.AddRange(_warnings);

                    _errors.Clear();
                    _warnings.Clear();
                    _fileContext = null;
                    _encoding = null;
                }
            }

            if (errors.Count == 0)
            {
                _logger.Info(LogCategoryConstants.HtmlMinificationSuccess,
                    string.Format(Strings.SuccesMessage_MarkupMinificationComplete, "HTML"),
                    fileContext, statistics);
            }

            return new MarkupMinificationResult(minifiedContent, errors, warnings, statistics);
        }

Same methods

GenericHtmlMinifier::Minify ( string content ) : MarkupMinificationResult
GenericHtmlMinifier::Minify ( string content, Encoding encoding ) : MarkupMinificationResult
GenericHtmlMinifier::Minify ( string content, bool generateStatistics ) : MarkupMinificationResult
GenericHtmlMinifier::Minify ( string content, string fileContext ) : MarkupMinificationResult