joeybloggs
4d2ffbedfc
Added traverseSlice function
9 years ago
joeybloggs
019c5fc4ac
Finished converting baked in functions & some updates
...
completed all validations function conversion.
updated omitempty check to continue if all ok instead of
passing tag to be validated.
9 years ago
joeybloggs
68ba87af24
More Progess
...
added single field validation function.
updated a few more baked in functions.
added back single field validation benchmark.
9 years ago
joeybloggs
7af3fb7c1f
initial validation logic reworked
...
initial function layouts and validation completed, still need to rework
all of the baked in functions, add map and array traversal and add back original
test cases.
NOTE: a far more pragmatic validation tests will be added, but not until it has
been proven stable with at least the old tests.
9 years ago
joeybloggs
9596b89a26
working on traversing field values
...
whether it's a struct field or just a regular field
working on a single function to handle both to reduce
checking the same values within struct field recursion or
a regular field; this will also help reduce code complexity
and keep things DRY.
10 years ago
joeybloggs
e42d7b683a
determined variable values to be passed
...
for #74
10 years ago
joeybloggs
c62550c414
Investigating difference speed architectures
...
investigation if goroutines in a consumer producer pattern vs passing a map
Spoiler: the map wins out big time!
10 years ago
joeybloggs
e1fd32247f
Fix interface issue when value is set but no validation tag exists
10 years ago
joeybloggs
562e77833a
change to use native sync.Pool
...
for #98
10 years ago
joeybloggs
92bd6b335a
code cleanup
...
for #88
10 years ago
joeybloggs
f604b6cc96
Complete Flatten logic
...
for #88
10 years ago
joeybloggs
4d57165562
fix wrong variable used in checking for "[" char
...
for #85
10 years ago
joeybloggs
7d55bfddde
complete flatten logic for array elements
...
for #85
10 years ago
joeybloggs
c7ff296dca
correct interface issue
...
add handling of interface validation by determining it's type
for issue #85
10 years ago
joeybloggs
200a5b4aad
finish map error handling & complete test coverage
...
for #78
10 years ago
joeybloggs
8bf793acde
correct map references pointing to slice after copy/paste
...
for#78
10 years ago
joeybloggs
14f176e8ac
add traverseMap
...
for #78
10 years ago
joeybloggs
98f4165fae
added time test
...
fix issue with time.Time data type validation
10 years ago
joeybloggs
a0f6d14ada
add more tests
...
correct pointer issue is traverseArray
for #78
10 years ago
joeybloggs
689d3e9989
finalized array error handling
...
for #78
10 years ago
joeybloggs
1ba858eec1
correct FieldError error printing idea issue
...
for #78
10 years ago
joeybloggs
6eded1f817
correct error output and index out of order error
...
for #78
10 years ago
joeybloggs
d019d02290
Add some initial validation
...
change slice errors variable type to map[int]error to allow tracking of index of the error i the array
for #78
10 years ago
joeybloggs
4afdc19aef
Finish initial array traversal logic
...
for #78
10 years ago
joeybloggs
e0e86490bf
Fix Issue with nested struct as pointer being nil
...
for #79
10 years ago
joeybloggs
e0bfa17b22
add initial dive logic
10 years ago
joeybloggs
9ff11ae808
break out benchmarks into separate file
...
create examples file for better godocs
10 years ago
joeybloggs
fcbf6b65e4
add caching pool of StructErrors to reuse objects, reduce garbage collection and reduce memory allocations
...
for #56
10 years ago
joeybloggs
0fbc3228e8
rework code to allow handling of comma (,) and = within the params i.e. excludesall=,=
...
add test cases for comma and = validation within params
add documentation stating how to include a comma within the parameters
for #67
10 years ago
joeybloggs
793099be40
remove trimming of param option as space could be a valid param option or char
...
for #63
10 years ago
joeybloggs
ad39bb92dd
code cleanup
10 years ago
joeybloggs
6ffa5d1455
add thread safety note to AddFunction and SetTag functions
10 years ago
joeybloggs
8c2248a5ce
add map thread safety
10 years ago
joeybloggs
0c5fbee316
code cleanup + variable renaming
...
restructure fieldWithNameAndSingleTag for speed + less allocations
10 years ago
joeybloggs
e4f2ff67bd
add caching of field only tags, now less time, memory and only 2 allocations vs 9
10 years ago
joeybloggs
22d031deb0
add struct caching, significant speedup even in a simple test
...
NOTE: validating a single fields speed however was reduced and more memory allocations, need to correct this before marking caching as complete.
10 years ago
joeybloggs
beaa9adf31
minor performance updates
...
add benchmarks
10 years ago
joeybloggs
9d18657e1f
remove extra carriage returns
...
for #44
10 years ago
joeybloggs
fd059fe2f1
remove unnecessary carriage returns
...
for #44
10 years ago
joeybloggs
b891b1cf3c
add eq baked in function + tests
...
add eqfield baked in function + tests
for issue #35
10 years ago
Dean Karn
7ac98be692
changes in preparation for package rename to validator
...
update code for more idiomatic code
10 years ago
Dean Karn
1e1442d02c
merge changes from Pull Request #24 from @manucorporat
10 years ago
Dean Karn
a3cb430fa1
issue-#20
...
add extra param of current struct.
10 years ago
Dean Karn
622107d990
issue-#18
...
add “structonly” tag for struct only and not field validation
10 years ago
Dean Karn
684c339b0d
issue-#15
...
correct incorrect call to ValidateStruct and changed to
ValidateStructRecursive
10 years ago
Dean Karn
cfea08f69d
issue-#14
...
remove internal validator.
10 years ago
Dean Karn
c0c54e6ddf
issue-#12
...
add return of variable Type as well as Kind
10 years ago
Dean Karn
e882184fe2
issue-#11
...
update gt, gte, lt and let to handle dates compared to time.Now().UTC()
10 years ago
Dean Karn
191b1ce01f
v2 add cross field validation ability
10 years ago
Dean Karn
ac82433503
Update to return FieldValidationError for single field validation
...
update to return FieldValidationError for single field validation
add Kind, Param and Value to the FieldValidationError struct to allow
for a more automated error handling api outside of this library.
10 years ago