Ejemplo n.º 1
0
        }//method

        public override void Flatten(IList <IFlatSqlFragment> flatList, ISqlPrecedenceHandler precedenceHandler)
        {
            if (precedenceHandler == null)
            {
                foreach (var fr in Fragments)
                {
                    fr?.Flatten(flatList, null);
                }
                return;
            }
            for (int i = 0; i < Fragments.Count; i++)
            {
                var fr = Fragments[i];
                if (fr == null)
                {
                    continue;
                }
                if (precedenceHandler.NeedsParenthesis(this, fr, isFirst: i == 0))
                {
                    flatList.Add(SqlTerms.LeftParenthesis);
                    fr.Flatten(flatList, precedenceHandler);
                    flatList.Add(SqlTerms.RightParenthesis);
                }
                else
                {
                    fr.Flatten(flatList, precedenceHandler);
                }
            }
        }//method
Ejemplo n.º 2
0
        public void WriteTo(IList <string> strings, IList <string> placeHolderArgs, ISqlPrecedenceHandler handler = null)
        {
            var flatList = Flatten(handler);

            foreach (var fl in flatList)
            {
                fl.AddFormatted(strings, placeHolderArgs);
            }
        }
Ejemplo n.º 3
0
        public IList <IFlatSqlFragment> Flatten(ISqlPrecedenceHandler handler = null)
        {
            var flatList = new List <IFlatSqlFragment>();

            foreach (var fr in Fragments)
            {
                fr.Flatten(flatList, handler);
            }
            return(flatList);
        }
Ejemplo n.º 4
0
 public override void Flatten(IList <IFlatSqlFragment> flatList, ISqlPrecedenceHandler precedenceHandler)
 {
     flatList.Add(this);
 }
Ejemplo n.º 5
0
 public abstract void Flatten(IList <IFlatSqlFragment> flatList, ISqlPrecedenceHandler precedenceHandler);