package clause

// From from clause
type From struct {
	Tables []Table
	Joins  []Join
}

// Name from clause name
func ( From) () string {
	return "FROM"
}

// Build build from clause
func ( From) ( Builder) {
	if len(.Tables) > 0 {
		for ,  := range .Tables {
			if  > 0 {
				.WriteByte(',')
			}

			.WriteQuoted()
		}
	} else {
		.WriteQuoted(currentTable)
	}

	for ,  := range .Joins {
		.WriteByte(' ')
		.Build()
	}
}

// MergeClause merge from clause
func ( From) ( *Clause) {
	.Expression = 
}