Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Merge 2927234 into fba742b
  • Loading branch information
guiwoda committed Dec 17, 2015
2 parents fba742b + 2927234 commit 01b790b
Showing 1 changed file with 22 additions and 25 deletions.
47 changes: 22 additions & 25 deletions src/Builders/Builder.php
Expand Up @@ -111,16 +111,10 @@ public function joinedTableInheritance(callable $callback = null)
*/
public function index($columns)
{
$columns = is_array($columns) ? $columns : func_get_args();

$index = new Index(
$this->builder,
$columns
return $this->constraint(
Index::class,
is_array($columns) ? $columns : func_get_args()
);

$this->queue($index);

return $index;
}

/**
Expand All @@ -130,16 +124,10 @@ public function index($columns)
*/
public function primary($fields)
{
$fields = is_array($fields) ? $fields : func_get_args();

$primary = new Primary(
$this->builder,
$fields
return $this->constraint(
Primary::class,
is_array($fields) ? $fields : func_get_args()
);

$this->queue($primary);

return $primary;
}

/**
Expand All @@ -149,16 +137,25 @@ public function primary($fields)
*/
public function unique($columns)
{
$columns = is_array($columns) ? $columns : func_get_args();

$unique = new UniqueConstraint(
$this->builder,
$columns
return $this->constraint(
UniqueConstraint::class,
is_array($columns) ? $columns : func_get_args()
);
}

/**
* @param string $class
* @param array $columns
*
* @return Index|Primary|UniqueConstraint
*/
protected function constraint($class, array $columns)
{
$constraint = new $class($this->builder, $columns);

$this->queue($unique);
$this->queue($constraint);

return $unique;
return $constraint;
}

/**
Expand Down

0 comments on commit 01b790b

Please sign in to comment.