package schema

import (
	
	
)

// reg match english letters and midline
var regEnLetterAndMidline = regexp.MustCompile("^[A-Za-z-_]+$")

type Check struct {
	Name       string
	Constraint string // length(phone) >= 10
	*Field
}

// ParseCheckConstraints parse schema check constraints
func ( *Schema) () map[string]Check {
	 := map[string]Check{}
	for ,  := range .FieldsByDBName {
		if  := .TagSettings["CHECK"];  != "" {
			 := strings.Split(, ",")
			if len() > 1 && regEnLetterAndMidline.MatchString([0]) {
				[[0]] = Check{Name: [0], Constraint: strings.Join([1:], ","), Field: }
			} else {
				if [0] == "" {
					 = strings.Join([1:], ",")
				}
				 := .namer.CheckerName(.Table, .DBName)
				[] = Check{Name: , Constraint: , Field: }
			}
		}
	}
	return 
}