public ScriptContext() { Pages = new SharpPages(this); PageFormats.Add(new HtmlPageFormat()); Preprocessors.Add(ScriptPreprocessors.TransformCodeBlocks); ScriptMethods.Add(new DefaultScripts()); ScriptMethods.Add(new HtmlScripts()); Plugins.Add(new DefaultScriptBlocks()); Plugins.Add(new HtmlScriptBlocks()); FilterTransformers[ScriptConstants.HtmlEncode] = HtmlPageFormat.HtmlEncodeTransformer; FilterTransformers["end"] = stream => (TypeConstants.EmptyByteArray.InMemoryStream() as Stream).InTask(); FilterTransformers["buffer"] = stream => stream.InTask(); Args[nameof(ScriptConfig.MaxQuota)] = ScriptConfig.MaxQuota; Args[nameof(ScriptConfig.DefaultCulture)] = ScriptConfig.CreateCulture(); Args[nameof(ScriptConfig.DefaultDateFormat)] = ScriptConfig.DefaultDateFormat; Args[nameof(ScriptConfig.DefaultDateTimeFormat)] = ScriptConfig.DefaultDateTimeFormat; Args[nameof(ScriptConfig.DefaultTimeFormat)] = ScriptConfig.DefaultTimeFormat; Args[nameof(ScriptConfig.DefaultFileCacheExpiry)] = ScriptConfig.DefaultFileCacheExpiry; Args[nameof(ScriptConfig.DefaultUrlCacheExpiry)] = ScriptConfig.DefaultUrlCacheExpiry; Args[nameof(ScriptConfig.DefaultIndent)] = ScriptConfig.DefaultIndent; Args[nameof(ScriptConfig.DefaultNewLine)] = ScriptConfig.DefaultNewLine; Args[nameof(ScriptConfig.DefaultJsConfig)] = ScriptConfig.DefaultJsConfig; Args[nameof(ScriptConfig.DefaultStringComparison)] = ScriptConfig.DefaultStringComparison; Args[nameof(ScriptConfig.DefaultTableClassName)] = ScriptConfig.DefaultTableClassName; Args[nameof(ScriptConfig.DefaultErrorClassName)] = ScriptConfig.DefaultErrorClassName; }
public void Append(TagSpan <IGLSLTag> preprocessorTagSpan) { var lastPreprocessor = Preprocessors.LastOrDefault(); if (lastPreprocessor == null || preprocessorTagSpan.Span.Start > lastPreprocessor.Span.End.Position) { Preprocessors.Add(preprocessorTagSpan); } else { for (var i = 0; i < Preprocessors.Count; i++) { if (preprocessorTagSpan.Span.Start < Preprocessors[i].Span.Start) { Preprocessors.Insert(i, preprocessorTagSpan); break; } } } }