示例#1
0
        /// <inheritdoc/>
        public Task WriteAsync(RendererBase renderer, MustacheToken obj, Context context)
        {
            var typedRenderer = (TRenderer)renderer;
            var typedObj      = (TToken)obj;

            return(WriteAsync(typedRenderer, typedObj, context));
        }
示例#2
0
 private void AddIndentToTag(MustacheToken token)
 {
     if (DefaultLineIndent > 0)
     {
         token.Indent = DefaultLineIndent;
     }
 }
示例#3
0
        /// <inheritdoc/>
        public virtual void Write(RendererBase renderer, MustacheToken obj, Context context)
        {
            var typedRenderer = (TRenderer)renderer;
            var typedObj      = (TToken)obj;

            Write(typedRenderer, typedObj, context);
        }
示例#4
0
        private void AddTag(MustacheToken token)
        {
            if (token is INonSpace)
            {
                HasSeenNonSpaceOnLine = true;
            }

            if (firstOnLine)
            {
                AddIndentToTag(token);
                firstOnLine = false;
            }

            tagCache.Add(token);
        }
示例#5
0
 /// <inheritdoc/>
 public bool Accept(RendererBase renderer, MustacheToken obj)
 {
     return(obj is TToken);
 }
示例#6
0
 /// <summary>
 /// Renders a given tag
 /// </summary>
 /// <param name="token">The tag to render</param>
 /// <param name="context">The context to write the tag with</param>
 /// <returns>The current renderer</returns>
 public abstract ValueTask <object> RenderAsync(MustacheToken token, Context context);
示例#7
0
 /// <summary>
 /// Renders a given tag
 /// </summary>
 /// <param name="token">The tag to render</param>
 /// <param name="context">The context to write the tag with</param>
 /// <returns>The current renderer</returns>
 public abstract object Render(MustacheToken token, Context context);