# Functions

ArrMapLen will return the size of underlying map, array or slice.
IsDateFormatValid validate if the supplied date string is compatible with specified format.
NewGoValueNode creates new instance of ValueNode backed by golang reflection.
NewJSONValueNode will create a new ValueNode structure backend using data structure as provided by JSON parser.
SetNumberValue will assign a numeric value to a numeric target value this helper function is to ensure assignment between numerical types is happening regardless of types, int, uint or float.
StrCompare is like strings.compare() function, to be called by the ValueNode function call if the underlying data is string.
StrContains is like strings.Contains() function, to be called by the ValueNode function call if the underlying data is string.
StrCount is like strings.Count() function, to be called by the ValueNode function call if the underlying data is string.
StrHasPrefix is like strings.HasPrefix() function, to be called by the ValueNode functioncall if the underlying data is string.
StrHasSuffix is like strings.HasSuffix() function, to be called by the ValueNode functioncall if the underlying data is string.
StrIn will check the string instance if its equals one of the arguments, if no argument specified it will return false.
StrIndex is like strings.Index() function, to be called by the ValueNode functioncall if the underlying data is string.
StrLastIndex is like strings.LastIndex() function, to be called by the ValueNode functioncall if the underlying data is string.
StrLen is return the string length value.
StrMatchRegexPattern reports whether the string s contains any match of the regular expression pattern.
StrRepeat is like strings.Repeat() function, to be called by the ValueNode functioncall if the underlying data is string.
StrReplace is like strings.Replace() function, to be called by the ValueNode functioncall if the underlying data is string.
StrSplit is like strings.Split() function, to be called by the ValueNode functioncall if the underlying data is string.
StrToLower is like strings.ToLower() function, to be called by the ValueNode functioncall if the underlying data is string.
StrToUpper is like strings.ToUpper() function, to be called by the ValueNode functioncall if the underlying data is string.
StrTrim is like strings.Trim() function, to be called by the ValueNode functioncall if the underlying data is string.

# Constants

ANSIC regex to validate ANSIC date string.
Kitchen regex to validate Kitchen date string.
RFC1123 regex to validate RFC1123 date string.
RFC1123 with numeric zone.
RFC3339 regex to validate RFC3339 date string.
RFC3339Nano regex to validate RFC3339Nano date string.
RFC822 regex to validate RFC822 date string.
RFC822 with numeric zone.
RFC850 regex to validate RFC850 date string.
RubyDate regex to validate RubyDate date string.
Stamp regex to validate Stamp date string.
StampMicro regex to validate StampMicro date string.
StampMilli regex to validate StampMilli date string.
StampNano regex to validate StampNano date string.
UnixDate regex to validate UnixDate date string.

# Variables

DateTimeLayout contains the date time layouting used by this data access layer.
TimeValidatorMap map from time format to their validator regex pattern.

# Structs

GoValueNode is an implementation of ValueNode that used to traverse native golang primitives through reflect package.
JSONValueNode will hold the json root object as the result of JSON unmarshal.

# Interfaces

ValueNode is an abstraction layer to access underlying dom style data.