github.com/wawandco/oxpecker@v1.5.7-0.20210910201653-5958d4afdd89/tools/soda/fizz/drop_table.go (about)

     1  package fizz
     2  
     3  import (
     4  	"strings"
     5  
     6  	"github.com/gobuffalo/fizz"
     7  )
     8  
     9  type dropTable struct{}
    10  
    11  func (dt dropTable) match(name string) bool {
    12  	return strings.HasPrefix(name, "drop_table_")
    13  }
    14  
    15  func (dt *dropTable) GenerateFizz(name string, args []string) (string, string, error) {
    16  	var up, down string
    17  	name = strings.TrimPrefix(name, "drop_table_")
    18  	if name == "" {
    19  		return up, down, ErrNoTableName
    20  	}
    21  
    22  	table := fizz.NewTable(name, map[string]interface{}{
    23  		"timestamps": false,
    24  	})
    25  
    26  	return table.UnFizz(), table.Fizz(), nil
    27  }