package sql type TableRow struct { columnValues []columnValue err error } type columnValue struct { column string value string } func NewTableRow() *TableRow { return &TableRow{ columnValues: make([]columnValue, 0), } } func (tableRow *TableRow) Add(column string, value any) *TableRow { if tableRow.err != nil { return tableRow } parsedValue, err := toSqlValue(value) if err != nil { tableRow.err = err return tableRow } tableRow.columnValues = append(tableRow.columnValues, columnValue{ column: column, value: parsedValue, }) return tableRow }