Beispiel #1
0
 public void Transform(WhiteSpaceNode item)
 {
     if (Strip)
     {
         pendingWhiteSpace.Enqueue(item);
     }
 }
 public void Transform(WhiteSpaceNode item, bool inner = false)
 {
     if (_WhiteSpaceMode != WhiteSpaceMode.Default)
     {
         item.WhiteSpaceMode = _WhiteSpaceMode;
         return;
     }
     _PendingWhiteSpace.Add(item);
 }
        public IEnumerable <string> Transform(WhiteSpaceNode item)
        {
            _EncounteredOutputStyleBlock = true;
            if (!(ShouldRender && _EncounteredOutputStyleBlock))
            {
                yield break;
            }

            if (item.WhiteSpaceMode != WhiteSpaceControl.WhiteSpaceMode.Trim)
            {
                yield return(JinjaCustomStringProvider.Instance.ToString(item.ToString()));
            }
        }
Beispiel #4
0
        internal static IEnumerable <ASTNode> ParseUntilFailure(JinjaEnvironment environment, Lexer lexer, ILookaroundEnumerator <ParsingNode> enumerator)
        {
            do
            {
                ASTNode?astNode = default;
                switch (enumerator.Current.NodeType)
                {
                case ParsingNodeType.Statement:
                    StatementNode.TryParse(environment, lexer, enumerator, out astNode);
                    break;

                case ParsingNodeType.NewLine:
                    astNode = new NewLineNode(enumerator.Current);
                    break;

                case ParsingNodeType.Comment:
                    astNode = new CommentNode(enumerator.Current);
                    break;

                case ParsingNodeType.WhiteSpace:
                    astNode = WhiteSpaceNode.Parse(enumerator);
                    break;

                case ParsingNodeType.Expression:
                    if (ExpressionNode.TryParse(environment, enumerator, out astNode) == false)
                    {
                        throw new NotImplementedException();
                    }
                    break;

                case ParsingNodeType.Output:
                    astNode = new OutputNode(enumerator.Current);
                    break;
                }
                if (astNode == default)
                {
                    yield break;
                }
                yield return(astNode);
            } while (enumerator.MoveNext());
        }
Beispiel #5
0
 public override ASTNode Transform(WhiteSpaceNode item)
 {
     return(base.Transform(item));
 }
 public void Transform(WhiteSpaceNode item)
 {
     return;
 }
Beispiel #7
0
 public Expression Transform(WhiteSpaceNode item)
 {
     throw new NotImplementedException();
 }
 public void Transform(WhiteSpaceNode item)
 {
     TransformASTNode(item);
 }
Beispiel #9
0
 public IEnumerable <bool> Transform(WhiteSpaceNode item)
 {
     yield return(false);
 }
 public IEnumerable <ASTNode> Transform(WhiteSpaceNode item)
 {
     yield return(item);
 }
Beispiel #11
0
 public virtual ASTNode Transform(WhiteSpaceNode item)
 {
     return(item);
 }