Ejemplo n.º 1
0
 protected virtual string GetDelimiter(BlockExpressionDelimiter delimiter)
 {
     return(delimiter switch
     {
         BlockExpressionDelimiter.Space => " ",
         BlockExpressionDelimiter.Break => "\n",
         BlockExpressionDelimiter.Terminator => ";",
         _ => string.Empty,
     });
Ejemplo n.º 2
0
        public BlockExpression(BlockExpressionDelimiter delimiter, IEnumerable <IExpression> items)
        {
            this.Delimiter = delimiter;

            if (items == null)
            {
                _items = new List <IExpression>();
            }
            else
            {
                _items = new List <IExpression>(items);
            }
        }
Ejemplo n.º 3
0
        protected virtual string GetDelimiter(BlockExpressionDelimiter delimiter)
        {
            switch (delimiter)
            {
            case BlockExpressionDelimiter.Space:
                return(" ");

            case BlockExpressionDelimiter.Break:
                return("\n");

            case BlockExpressionDelimiter.Terminator:
                return(";");
            }

            return(string.Empty);
        }
Ejemplo n.º 4
0
 /// <summary>
 /// 创建一个块级表达式。
 /// </summary>
 /// <param name="delimiter">指定的块级表达式元素分割符。</param>
 /// <returns>返回新建的块级表达式对象。</returns>
 public static BlockExpression Block(BlockExpressionDelimiter delimiter = BlockExpressionDelimiter.None)
 {
     return(new BlockExpression(delimiter));
 }
Ejemplo n.º 5
0
 public BlockExpression(BlockExpressionDelimiter delimiter = BlockExpressionDelimiter.None)
 {
     this.Delimiter = delimiter;
     _items         = new List <IExpression>();
 }