Hyena.Query.QueryListNode.AppendUserQuery C# (CSharp) Method

AppendUserQuery() public method

public AppendUserQuery ( StringBuilder sb ) : void
sb StringBuilder
return void
        public override void AppendUserQuery(StringBuilder sb)
        {
            if (ChildCount == 0)
                return;

            if (Keyword != Keyword.Not) {
                if (ChildCount > 1 && Parent != null)
                    sb.Append ("(");
                bool first = true;
                foreach (QueryNode child in Children) {
                    if (!first) {
                        if (Keyword == Keyword.Or) {
                            // FIXME translate
                            sb.Append (" or ");
                        } else {
                            sb.Append (" ");
                        }
                    } else {
                        first = false;
                    }
                    child.AppendUserQuery (sb);
                }
                if (ChildCount > 1 && Parent != null)
                    sb.Append (")");
            } else {
                sb.Append ("-");
                Children [0].AppendUserQuery (sb);
            }
        }