/// <summary> /// Добавляет чере AND ограничение /// </summary> /// <param name="ex">Ограничение</param> public void AddAnd(Expr ex) { list.Add(ex); list.Add(new Oper(Uslovie.AND)); }
/// <summary> /// Добавляет чере OR ограничение /// </summary> /// <param name="ex">Ограничение</param> public void AddOr(Expr ex) { list.Add(ex); list.Add(new Oper(Uslovie.OR)); }
/// <summary> /// Добавляет ограничение /// </summary> /// <param name="ex">Ограничение</param> public void Add(Expr ex) { list.Add(ex); }
/// <summary> /// Добавлет ограничение и условие соединения ограничений /// </summary> /// <param name="ex">Ограничение</param> /// <param name="op">AND/OR</param> public void Add(Expr ex, Oper op) { list.Add(ex); list.Add(op); }
/// <summary> /// Создает все состояния /// </summary> private void CreateClass() { //Создаем классы selectClass = new Select(this); select_stmt = new Select_Stmt(this); select_stmt_1 = new Select_Stmt_1(this); select_stmt_2 = new Select_Stmt_2(this); select_point = new Select_Point(this); select_stmt_0 = new Select_Stmt_0(this); select_all = new Select_All(this); select_all_use = new Select_All_Use(this); select_stmt_as = new Select_Stmt_As(this); select_all_1 = new Select_All_1(this); select_all_word = new Select_All_Word(this); select_once = new Select_Once(this); select_key_1 = new Select_Key_1(this); select_key_2 = new Select_Key_2(this); select_key_value = new Select_Key_Value(this); select_key_point = new Select_Key_Point(this); select_key_value_2 = new Select_Key_Value_2(this); select_paint_1 = new Select_Paint_1(this); select_paint_2 = new Select_Paint_2(this); select_paint_col = new Select_Paint_Col(this); select_paint_for = new Select_Paint_For(this); select_paint_value = new Select_Paint_Value(this); select_paint_use = new Select_Paint_Use(this); select_paint_col_name = new Select_Paint_Col_Name(this); select_paint_col_point = new Select_Paint_Col_Point(this); select_paint_col_word = new Select_Paint_Col_Word(this); select_paint_other = new Select_Paint_Other(this); select_paint_other_use = new Select_Paint_Other_Use(this); select_paint_other_tag = new Select_Paint_Other_Tag(this); fromClass = new From(this); from_1 = new From_1(this); from_table_1 = new From_Table_1(this); from_table_2 = new From_Table_2(this); from_join = new From_Join(this); from_where = new From_Where(this); //from_stmt = new From_Stmt(this); whereClass = new Where(this); //where_stmt = new Where_Stmt(this); where_column1 = new Where_Column1(this); where_column2 = new Where_Column2(this); where_table1 = new Where_Table1(this); where_table2 = new Where_Table2(this); where_point1 = new Where_Point1(this); where_point2 = new Where_Point2(this); where_comp = new Where_Comp(this); //group this.group = new GroupMain(this); group_by = new Group_By(this); group_by_all = new Group_By_All(this); group_by_word = new Group_By_Word(this); group_contain = new Group_Contain(this); group_contain_value_rec = new Group_Contain_Value_Rec(this); group_contain_use = new Group_Contain_Use(this); group_contain_use_tag = new Group_Contain_Use_Tag(this); group_flat = new Group_Flat(this); group_flat_header = new Group_Flat_Header(this); group_flat_header_value_rec = new Group_Flat_Header_Value_Rec(this); group_flat_header_use = new Group_Flat_Header_Use(this); group_flat_header_use_tag = new Group_Flat_Header_Use_Tag(this); group_flat_header_func = new Group_Flat_Header_Func(this); group_flat_header_func_end = new Group_Flat_Header_Func_End(this); group_flat_header_func_next = new Group_Flat_Header_Func_Next(this); group_flat_footer = new Group_Flat_Footer(this); group_flat_footer_value_rec = new Group_Flat_Footer_Value_Rec(this); group_flat_footer_use = new Group_Flat_Footer_Use(this); group_flat_footer_use_tag = new Group_Flat_Footer_Use_Tag(this); group_flat_footer_func = new Group_Flat_Footer_Func(this); group_flat_footer_func_end = new Group_Flat_Footer_Func_End(this); group_flat_footer_func_next = new Group_Flat_Footer_Func_Next(this); group_flat_footer_value_column = new Group_Flat_Footer_Value_Column(this); group_flat_header_value_column = new Group_Flat_Header_Value_Column(this); group_contain_value_column = new Group_Contain_Value_Column(this); asClass = new As(this); //as_stmt = new As_Stmt(this); CurentExpr = new Expr(); CurentOper = new Oper(); }