Validate input data in Go https://pkg.go.dev/github.com/annybs/go-validate

Aneurin Barker Snook ad75934954 add readme for each package 1 gadu atpakaļ
README.md ad75934954 add readme for each package 1 gadu atpakaļ
all.go c74486d122 add all validator, simplify error messages 2 gadi atpakaļ
all_test.go 40482060ac update all validation tests 2 gadi atpakaļ
chars.go 034557c12d add ExceptChars validator 2 gadi atpakaļ
chars_test.go 034557c12d add ExceptChars validator 2 gadi atpakaļ
email.go 40482060ac update all validation tests 2 gadi atpakaļ
email_test.go db902e3c1c add validation error type, fix tests, add number tests 2 gadi atpakaļ
equal.go 40482060ac update all validation tests 2 gadi atpakaļ
equal_test.go 40482060ac update all validation tests 2 gadi atpakaļ
error.go db902e3c1c add validation error type, fix tests, add number tests 2 gadi atpakaļ
error_test.go db902e3c1c add validation error type, fix tests, add number tests 2 gadi atpakaļ
go.mod d55961c207 migrate from recipeer org to annybs 1 gadu atpakaļ
in.go 40482060ac update all validation tests 2 gadi atpakaļ
in_test.go db902e3c1c add validation error type, fix tests, add number tests 2 gadi atpakaļ
length.go 40482060ac update all validation tests 2 gadi atpakaļ
length_test.go 40482060ac update all validation tests 2 gadi atpakaļ
number.go db902e3c1c add validation error type, fix tests, add number tests 2 gadi atpakaļ
number_test.go db902e3c1c add validation error type, fix tests, add number tests 2 gadi atpakaļ
size.go 40482060ac update all validation tests 2 gadi atpakaļ
size_test.go 40482060ac update all validation tests 2 gadi atpakaļ
url.go a31f5d500a add url validator 2 gadi atpakaļ
url_test.go a31f5d500a add url validator 2 gadi atpakaļ
uuid.go 40482060ac update all validation tests 2 gadi atpakaļ
uuid_test.go db902e3c1c add validation error type, fix tests, add number tests 2 gadi atpakaļ

README.md

Go Validate

A suite of straightforward validation functions. You put something in, you get back nil or an error.

Error handling

You can use errors.Is() to ascertain the type of errors thrown by validation functions. This may be helpful to control side effects, particularly if using multiple validators and returning early (similar to a strongly-typed try-catch). For example:

Example

package main

import (
	"errors"
	"fmt"

	"github.com/annybs/go/validate"
)

func main() {
	v := validate.Equal("a")
	if err := v("b"); err != nil {
		if errors.Is(err, validate.ErrNotEqual) {
			fmt.Println("failed successfully")
		} else {
			fmt.Println("failed unsuccessfully")
		}
	}
}

License

See LICENSE.md