Storm\Drivers\Platforms\Mysql\Syncing\TableTraitManager::Index PHP Метод

Index() публичный Метод

public Index ( QueryBuilder $QueryBuilder, Table $Table, Index $Trait )
$QueryBuilder Storm\Drivers\Base\Relational\Queries\QueryBuilder
$Table Storm\Drivers\Base\Relational\Table
$Trait Storm\Drivers\Platforms\Mysql\Tables\Index
    public function Index(QueryBuilder $QueryBuilder, Table $Table, Mysql\Tables\Index $Trait)
    {
        $QueryBuilder->AppendIdentifier($this->MapIndexType($Trait->GetType()) . ' INDEX # ', [$Trait->GetName()]);
        $QueryBuilder->Append('(');
        $First = true;
        foreach ($Trait->GetColumns() as $Column) {
            if ($First) {
                $First = false;
            } else {
                $QueryBuilder->Append(',');
            }
            $ColumnName = $Column->GetName();
            $QueryBuilder->AppendIdentifier('#', [$ColumnName]);
            $QueryBuilder->Append(' ' . $this->MapIndexDirection($Trait->GetColumnDirection($QueryBuilder)));
        }
        $QueryBuilder->Append(')');
        $StorageType = $Trait->GetStorageType();
        if ($StorageType !== null) {
            $QueryBuilder->Append('USING' . $this->MapIndexStorageType($Trait->GetStorageType()));
        }
    }