/** * Add a column * * @param string|Closure $name Column's name * @param string $alias (optional) Alias * * @return $this */ public function column($name, string $alias = null) : self { if ($name instanceof Closure) { $expression = $this->expression(); $name($expression); $name = $expression; } $this->sql->addColumn($name, $alias); return $this; }
/** * @param array $values * @return InsertStatement */ public function insert(array $values) : self { foreach ($values as $column => $value) { $this->sql->addColumn($column); if ($value instanceof Closure) { $expression = new Expression(); $value($expression); $value = $expression; } $this->sql->addValue($value); } return $this; }