AddClause add clause
(v clause.Interface)
| 270 | |
| 271 | // AddClause add clause |
| 272 | func (stmt *Statement) AddClause(v clause.Interface) { |
| 273 | if optimizer, ok := v.(StatementModifier); ok { |
| 274 | optimizer.ModifyStatement(stmt) |
| 275 | } else { |
| 276 | name := v.Name() |
| 277 | c := stmt.Clauses[name] |
| 278 | c.Name = name |
| 279 | v.MergeClause(&c) |
| 280 | stmt.Clauses[name] = c |
| 281 | } |
| 282 | } |
| 283 | |
| 284 | // AddClauseIfNotExists add clause if not exists |
| 285 | func (stmt *Statement) AddClauseIfNotExists(v clause.Interface) { |