Пример #1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="RendererSettings"/> class.
 /// </summary>
 /// <param name="valueGetters">The value getters</param>
 /// <param name="truthyChecks">The truthy checks</param>
 /// <param name="templateLoader">The template loader</param>
 /// <param name="partialLoader">The partial loader</param>
 /// <param name="maxRecursionDepth">The max recursion depth</param>
 /// <param name="renderSettings">The render settings</param>
 /// <param name="enumerationConverters">The enumeration converters</param>
 /// <param name="ignoreCaseOnLookup">Should case be ignored on lookup</param>
 /// <param name="parser">The mustache parser to use</param>
 /// <param name="rendererPipeline">The renderer pipeline to use</param>
 /// <param name="defaultTags">The default tags to use during parsing</param>
 /// <param name="parserPipeline">The parser pipeline to use during parsing</param>
 public RendererSettings(
     Dictionary <Type, ValueGetterDelegate> valueGetters,
     Dictionary <Type, List <Func <object, bool> > > truthyChecks,
     IStubbleLoader templateLoader,
     IStubbleLoader partialLoader,
     uint maxRecursionDepth,
     RenderSettings renderSettings,
     Dictionary <Type, Func <object, IEnumerable> > enumerationConverters,
     bool ignoreCaseOnLookup,
     IMustacheParser parser,
     TokenRendererPipeline <Context> rendererPipeline,
     Classes.Tags defaultTags,
     ParserPipeline parserPipeline)
     : base(
         templateLoader,
         partialLoader,
         maxRecursionDepth,
         ignoreCaseOnLookup,
         parser,
         defaultTags,
         parserPipeline)
 {
     ValueGetters          = valueGetters.ToImmutableDictionary();
     TruthyChecks          = truthyChecks.ToImmutableDictionary(k => k.Key, v => v.Value.ToImmutableArray());
     RenderSettings        = renderSettings;
     EnumerationConverters = enumerationConverters.ToImmutableDictionary();
     RendererPipeline      = rendererPipeline;
 }
Пример #2
0
 /// <summary>
 /// Initializes a new instance of the <see cref="RendererSettings"/> class.
 /// </summary>
 /// <param name="valueGetters">The value getters</param>
 /// <param name="truthyChecks">The truthy checks</param>
 /// <param name="templateLoader">The template loader</param>
 /// <param name="partialLoader">The partial loader</param>
 /// <param name="maxRecursionDepth">The max recursion depth</param>
 /// <param name="renderSettings">The render settings</param>
 /// <param name="enumerationConverters">The enumeration converters</param>
 /// <param name="ignoreCaseOnLookup">Should case be ignored on lookup</param>
 /// <param name="parser">The mustache parser to use</param>
 /// <param name="rendererPipeline">The renderer pipeline to use</param>
 /// <param name="defaultTags">The default tags to use during parsing</param>
 /// <param name="parserPipeline">The parser pipeline to use during parsing</param>
 /// <param name="sectionBlacklistTypes">The blacklisted section types</param>
 /// <param name="encodingFunction">A function for encoding strings</param>
 public RendererSettings(
     Dictionary <Type, ValueGetterDelegate> valueGetters,
     Dictionary <Type, List <Func <object, bool> > > truthyChecks,
     IStubbleLoader templateLoader,
     IStubbleLoader partialLoader,
     uint maxRecursionDepth,
     RenderSettings renderSettings,
     Dictionary <Type, Func <object, IEnumerable> > enumerationConverters,
     bool ignoreCaseOnLookup,
     IMustacheParser parser,
     TokenRendererPipeline <Context> rendererPipeline,
     Tags defaultTags,
     ParserPipeline parserPipeline,
     HashSet <Type> sectionBlacklistTypes,
     Func <string, string> encodingFunction)
     : base(
         templateLoader,
         partialLoader,
         maxRecursionDepth,
         ignoreCaseOnLookup,
         parser,
         defaultTags,
         parserPipeline,
         sectionBlacklistTypes)
 {
     OrderedValueGetters   = valueGetters.Keys.OrderBy(t => t, TypeBySubclassAndAssignableImpl.Default).ToImmutableArray();
     ValueGetters          = valueGetters.ToImmutableDictionary();
     TruthyChecks          = truthyChecks.ToImmutableDictionary(k => k.Key, v => v.Value.ToImmutableArray());
     RenderSettings        = renderSettings;
     EnumerationConverters = enumerationConverters.ToImmutableDictionary();
     RendererPipeline      = rendererPipeline;
     EncodingFuction       = encodingFunction;
 }
Пример #3
0
 /// <summary>
 /// Initializes a new instance of the <see cref="RendererSettings"/> class.
 /// </summary>
 /// <param name="valueGetters">The value getters</param>
 /// <param name="truthyChecks">The truthy checks</param>
 /// <param name="templateLoader">The template loader</param>
 /// <param name="partialLoader">The partial loader</param>
 /// <param name="maxRecursionDepth">The max recursion depth</param>
 /// <param name="renderSettings">The render settings</param>
 /// <param name="enumerationConverters">The enumeration converters</param>
 /// <param name="ignoreCaseOnLookup">Should case be ignored on lookup</param>
 /// <param name="parser">The mustache parser to use</param>
 /// <param name="rendererPipeline">The renderer pipeline to use</param>
 /// <param name="defaultTags">The default tags to use during parsing</param>
 /// <param name="parserPipeline">The parser pipeline to use during parsing</param>
 public RendererSettings(
     Dictionary <Type, Func <object, string, object> > valueGetters,
     IEnumerable <Func <object, bool?> > truthyChecks,
     IStubbleLoader templateLoader,
     IStubbleLoader partialLoader,
     uint maxRecursionDepth,
     RenderSettings renderSettings,
     Dictionary <Type, Func <object, IEnumerable> > enumerationConverters,
     bool ignoreCaseOnLookup,
     IMustacheParser parser,
     TokenRendererPipeline rendererPipeline,
     Classes.Tags defaultTags,
     ParserPipeline parserPipeline)
 {
     ValueGetters          = valueGetters.ToImmutableDictionary();
     TruthyChecks          = truthyChecks.ToImmutableArray();
     TemplateLoader        = templateLoader;
     PartialTemplateLoader = partialLoader;
     MaxRecursionDepth     = maxRecursionDepth;
     RenderSettings        = renderSettings;
     EnumerationConverters = enumerationConverters.ToImmutableDictionary();
     IgnoreCaseOnKeyLookup = ignoreCaseOnLookup;
     Parser           = parser;
     RendererPipeline = rendererPipeline;
     DefaultTags      = defaultTags;
     ParserPipeline   = parserPipeline;
 }
Пример #4
0
 /// <summary>
 /// Initializes a new instance of the <see cref="BaseSettings"/> class.
 /// </summary>
 /// <param name="templateLoader">The template loader</param>
 /// <param name="partialLoader">The partial loader</param>
 /// <param name="maxRecursionDepth">The max recursion depth</param>
 /// <param name="ignoreCaseOnLookup">Should case be ignored on lookup</param>
 /// <param name="parser">The mustache parser to use</param>
 /// <param name="defaultTags">The default tags to use during parsing</param>
 /// <param name="parserPipeline">The parser pipeline to use during parsing</param>
 public BaseSettings(
     IStubbleLoader templateLoader,
     IStubbleLoader partialLoader,
     uint maxRecursionDepth,
     bool ignoreCaseOnLookup,
     IMustacheParser parser,
     Classes.Tags defaultTags,
     ParserPipeline parserPipeline)
 {
     TemplateLoader        = templateLoader;
     PartialTemplateLoader = partialLoader;
     MaxRecursionDepth     = maxRecursionDepth;
     IgnoreCaseOnKeyLookup = ignoreCaseOnLookup;
     Parser         = parser;
     DefaultTags    = defaultTags;
     ParserPipeline = parserPipeline;
 }
Пример #5
0
 /// <summary>
 /// Initializes a new instance of the <see cref="BaseSettings"/> class.
 /// </summary>
 /// <param name="templateLoader">The template loader</param>
 /// <param name="partialLoader">The partial loader</param>
 /// <param name="maxRecursionDepth">The max recursion depth</param>
 /// <param name="ignoreCaseOnLookup">Should case be ignored on lookup</param>
 /// <param name="parser">The mustache parser to use</param>
 /// <param name="defaultTags">The default tags to use during parsing</param>
 /// <param name="parserPipeline">The parser pipeline to use during parsing</param>
 /// <param name="sectionBlacklistTypes">The blacklisted section types</param>
 public BaseSettings(
     IStubbleLoader templateLoader,
     IStubbleLoader partialLoader,
     uint maxRecursionDepth,
     bool ignoreCaseOnLookup,
     IMustacheParser parser,
     Classes.Tags defaultTags,
     ParserPipeline parserPipeline,
     HashSet <Type> sectionBlacklistTypes)
 {
     TemplateLoader        = templateLoader;
     PartialTemplateLoader = partialLoader;
     MaxRecursionDepth     = maxRecursionDepth;
     IgnoreCaseOnKeyLookup = ignoreCaseOnLookup;
     Parser                = parser;
     DefaultTags           = defaultTags;
     ParserPipeline        = parserPipeline;
     SectionBlacklistTypes = sectionBlacklistTypes.ToImmutableHashSet();
 }
Пример #6
0
 /// <summary>
 /// Initializes a new instance of the <see cref="CompilerSettings"/> class.
 /// </summary>
 /// <param name="valueGetters">The value getters</param>
 /// <param name="truthyChecks">The truthy checks</param>
 /// <param name="enumerationConverters">The enumeration converters</param>
 /// <param name="rendererPipeline">The renderer pipeline to use</param>
 /// <param name="templateLoader">The template loader</param>
 /// <param name="partialLoader">The partial loader</param>
 /// <param name="maxRecursionDepth">The max recursion depth</param>
 /// <param name="ignoreCaseOnLookup">Should case be ignored on lookup</param>
 /// <param name="parser">The mustache parser to use</param>
 /// <param name="defaultTags">The default tags to use during parsing</param>
 /// <param name="parserPipeline">The parser pipeline to use during parsing</param>
 /// <param name="compilationSettings">The default compilation settings for each render</param>
 public CompilerSettings(
     Dictionary <Type, DefaultSettings.ValueGetterDelegate> valueGetters,
     Dictionary <Type, List <LambdaExpression> > truthyChecks,
     Dictionary <Type, EnumerationConverter> enumerationConverters,
     TokenRendererPipeline <CompilerContext> rendererPipeline,
     IStubbleLoader templateLoader,
     IStubbleLoader partialLoader,
     uint maxRecursionDepth,
     bool ignoreCaseOnLookup,
     IMustacheParser parser,
     Tags defaultTags,
     ParserPipeline parserPipeline,
     CompilationSettings compilationSettings)
     : base(templateLoader, partialLoader, maxRecursionDepth, ignoreCaseOnLookup, parser, defaultTags, parserPipeline)
 {
     ValueGetters          = valueGetters.ToImmutableDictionary();
     TruthyChecks          = truthyChecks.ToImmutableDictionary(k => k.Key, v => v.Value.ToImmutableList());
     EnumerationConverters = enumerationConverters.ToImmutableDictionary();
     RendererPipeline      = rendererPipeline;
     CompilationSettings   = compilationSettings;
 }
Пример #7
0
 /// <summary>
 /// Sets the mustache parser to use for the renderer settings
 /// </summary>
 /// <param name="parser">The parser to use</param>
 /// <returns>The <see cref="RendererSettingsBuilder"/> for chaining</returns>
 public TBuilder SetMustacheParser(IMustacheParser parser)
 {
     Parser = parser;
     return((TBuilder)this);
 }
Пример #8
0
 /// <inheritdoc/>
 public IStubbleBuilder <T> SetMustacheParser(IMustacheParser parser)
 {
     SettingsBuilder.Parser = parser;
     return(this);
 }
Пример #9
0
 /// <summary>
 /// Sets the mustache parser to use for the renderer settings
 /// </summary>
 /// <param name="parser">The parser to use</param>
 /// <returns>The <see cref="RendererSettingsBuilder"/> for chaining</returns>
 public RendererSettingsBuilder SetMustacheParser(IMustacheParser parser)
 {
     Parser = parser;
     return(this);
 }