SYMBOL INDEX (196 symbols across 26 files) FILE: arrays.go function containsAll (line 14) | func containsAll(values, data any) any { function containsAny (line 51) | func containsAny(values, data any) any { function containsNone (line 83) | func containsNone(values, data any) any { function toAnySlice (line 109) | func toAnySlice(value any) []any { function containsElement (line 122) | func containsElement(slice []any, element any) bool { function isEqualValue (line 132) | func isEqualValue(a, b any) bool { FILE: arrays_test.go function TestContainsAll (line 9) | func TestContainsAll(t *testing.T) { function TestContainsAny (line 80) | func TestContainsAny(t *testing.T) { function TestContainsNone (line 151) | func TestContainsNone(t *testing.T) { FILE: benchmark/benchmark_test.go function performWarmupRuns (line 139) | func performWarmupRuns() { function runBenchmark (line 155) | func runBenchmark(b *testing.B, logic, data string) { function BenchmarkComprehensive (line 177) | func BenchmarkComprehensive(b *testing.B) { function BenchmarkDetailed (line 307) | func BenchmarkDetailed(b *testing.B) { function BenchmarkJSONLogicParallel (line 318) | func BenchmarkJSONLogicParallel(b *testing.B) { function BenchmarkArrayOperationsScaling (line 369) | func BenchmarkArrayOperationsScaling(b *testing.B) { function BenchmarkMathOperations (line 459) | func BenchmarkMathOperations(b *testing.B) { function BenchmarkStringOperations (line 482) | func BenchmarkStringOperations(b *testing.B) { function BenchmarkLogicOperations (line 512) | func BenchmarkLogicOperations(b *testing.B) { function BenchmarkCustomOperators (line 547) | func BenchmarkCustomOperators(b *testing.B) { FILE: comp.go function hardEquals (line 10) | func hardEquals(values, data any) any { function isLessThan (line 37) | func isLessThan(values, data any) any { function isLessOrEqualThan (line 55) | func isLessOrEqualThan(values, data any) any { function isGreaterThan (line 73) | func isGreaterThan(values, data any) any { function isGreaterOrEqualThan (line 90) | func isGreaterOrEqualThan(values, data any) any { function isEqual (line 108) | func isEqual(values, data any) any { function less (line 122) | func less(a, b any) bool { function equals (line 133) | func equals(a, b any) bool { FILE: comp_test.go function TestHardEqualsWithNonSliceValues (line 12) | func TestHardEqualsWithNonSliceValues(t *testing.T) { function TestHardEqualsWithSingleValueInSlice (line 27) | func TestHardEqualsWithSingleValueInSlice(t *testing.T) { function TestHardEqualsWithNilInParams (line 42) | func TestHardEqualsWithNilInParams(t *testing.T) { function TestLessThanWithSingleArgument (line 70) | func TestLessThanWithSingleArgument(t *testing.T) { function TestLessOrEqualThanWithSingleArgument (line 77) | func TestLessOrEqualThanWithSingleArgument(t *testing.T) { function TestGreaterThanWithSingleArgument (line 84) | func TestGreaterThanWithSingleArgument(t *testing.T) { function TestGreaterOrEqualThanWithSingleArgument (line 91) | func TestGreaterOrEqualThanWithSingleArgument(t *testing.T) { function TestEqualWithSingleArgument (line 98) | func TestEqualWithSingleArgument(t *testing.T) { function TestHardEqualsWithDifferentTypes (line 105) | func TestHardEqualsWithDifferentTypes(t *testing.T) { FILE: internal/javascript/javascript.go type UndefinedType (line 11) | type UndefinedType struct function At (line 21) | func At(values []any, index int) any { function ToNumber (line 41) | func ToNumber(v any) float64 { FILE: internal/javascript/javascript_test.go function TestAt (line 10) | func TestAt(t *testing.T) { function TestToNumber (line 51) | func TestToNumber(t *testing.T) { FILE: internal/testing.go type Test (line 13) | type Test struct type Tests (line 21) | type Tests function GetScenariosFromProposedOfficialTestSuite (line 26) | func GetScenariosFromProposedOfficialTestSuite() Tests { function GetScenariosFromOfficialTestSuite (line 37) | func GetScenariosFromOfficialTestSuite() Tests { function getScenariosFromFile (line 57) | func getScenariosFromFile(buffer []byte) Tests { FILE: internal/typing/typing.go function is (line 9) | func is(obj any, kind reflect.Kind) bool { function IsBool (line 22) | func IsBool(obj any) bool { function IsString (line 35) | func IsString(obj any) bool { function IsNumber (line 48) | func IsNumber(obj any) bool { function IsPrimitive (line 67) | func IsPrimitive(obj any) bool { function IsMap (line 80) | func IsMap(obj any) bool { function IsSlice (line 93) | func IsSlice(obj any) bool { function IsEmptySlice (line 107) | func IsEmptySlice(obj any) bool { function IsTrue (line 139) | func IsTrue(obj any) bool { function ToNumber (line 168) | func ToNumber(value any) float64 { function ToString (line 194) | func ToString(value any) string { FILE: internal/typing/typing_test.go function TestIsBool (line 9) | func TestIsBool(t *testing.T) { function TestIsString (line 33) | func TestIsString(t *testing.T) { function TestIsNumber (line 57) | func TestIsNumber(t *testing.T) { function TestIsPrimitive (line 84) | func TestIsPrimitive(t *testing.T) { function TestIsMap (line 107) | func TestIsMap(t *testing.T) { function TestIsSlice (line 131) | func TestIsSlice(t *testing.T) { function TestIsEmptySlice (line 155) | func TestIsEmptySlice(t *testing.T) { function TestIsTrue (line 184) | func TestIsTrue(t *testing.T) { function TestToNumber (line 212) | func TestToNumber(t *testing.T) { function TestToString (line 239) | func TestToString(t *testing.T) { FILE: issues_test.go function TestIssue50 (line 14) | func TestIssue50(t *testing.T) { function TestIssue51_example1 (line 28) | func TestIssue51_example1(t *testing.T) { function TestIssue51_example2 (line 42) | func TestIssue51_example2(t *testing.T) { function TestIssue52_example1 (line 56) | func TestIssue52_example1(t *testing.T) { function TestIssue52_example2 (line 70) | func TestIssue52_example2(t *testing.T) { function TestIssue58_example (line 84) | func TestIssue58_example(t *testing.T) { function TestIssue70 (line 101) | func TestIssue70(t *testing.T) { function TestIssue71_example_empty_min (line 125) | func TestIssue71_example_empty_min(t *testing.T) { function TestIssue71_example_empty_max (line 139) | func TestIssue71_example_empty_max(t *testing.T) { function TestIssue71_example_max (line 153) | func TestIssue71_example_max(t *testing.T) { function TestIssue74 (line 167) | func TestIssue74(t *testing.T) { function TestJsonLogicWithSolvedVars (line 177) | func TestJsonLogicWithSolvedVars(t *testing.T) { function TestIssue79 (line 228) | func TestIssue79(t *testing.T) { function TestIssue83 (line 265) | func TestIssue83(t *testing.T) { function TestIssue81 (line 291) | func TestIssue81(t *testing.T) { function TestIssue96 (line 315) | func TestIssue96(t *testing.T) { function TestIssue98 (line 334) | func TestIssue98(t *testing.T) { function TestIssue110 (line 349) | func TestIssue110(t *testing.T) { function TestIssue125_InOperatorWithVarsInSlice (line 363) | func TestIssue125_InOperatorWithVarsInSlice(t *testing.T) { function TestIssue125_CustomOperatorWithVarsInSlice (line 380) | func TestIssue125_CustomOperatorWithVarsInSlice(t *testing.T) { function TestIssue135 (line 410) | func TestIssue135(t *testing.T) { FILE: jsonlogic.go function Apply (line 44) | func Apply(rule, data io.Reader, result io.Writer) error { function ApplyRaw (line 82) | func ApplyRaw(rule, data json.RawMessage) (json.RawMessage, error) { function ApplyInterface (line 118) | func ApplyInterface(rule, data any) (output any, err error) { function GetJsonLogicWithSolvedVars (line 156) | func GetJsonLogicWithSolvedVars(rule, data json.RawMessage) ([]byte, err... function parseValues (line 178) | func parseValues(values, data any) any { function apply (line 206) | func apply(rules, data any) any { FILE: jsonlogic_test.go function TestRulesFromJsonLogic (line 16) | func TestRulesFromJsonLogic(t *testing.T) { function toJSON (line 38) | func toJSON(val any) string { function TestDivWithOnlyOneValue (line 46) | func TestDivWithOnlyOneValue(t *testing.T) { function TestSetAValue (line 60) | func TestSetAValue(t *testing.T) { function TestLocalContext (line 93) | func TestLocalContext(t *testing.T) { function TestMapWithZeroValue (line 129) | func TestMapWithZeroValue(t *testing.T) { function TestListOfRanges (line 162) | func TestListOfRanges(t *testing.T) { function TestSomeWithLists (line 199) | func TestSomeWithLists(t *testing.T) { function TestAllWithLists (line 221) | func TestAllWithLists(t *testing.T) { function TestAllWithArrayOfMapData (line 243) | func TestAllWithArrayOfMapData(t *testing.T) { function TestNoneWithLists (line 271) | func TestNoneWithLists(t *testing.T) { function TestInOperatorWorksWithMaps (line 293) | func TestInOperatorWorksWithMaps(t *testing.T) { function TestAbsoluteValue (line 325) | func TestAbsoluteValue(t *testing.T) { function TestMergeArrayOfArrays (line 345) | func TestMergeArrayOfArrays(t *testing.T) { function TestDataWithDefaultValueWithApplyRaw (line 375) | func TestDataWithDefaultValueWithApplyRaw(t *testing.T) { function TestDataWithDefaultValueWithApplyInterface (line 393) | func TestDataWithDefaultValueWithApplyInterface(t *testing.T) { function TestMissingOperators (line 410) | func TestMissingOperators(t *testing.T) { function TestZeroDivision (line 423) | func TestZeroDivision(t *testing.T) { function TestSliceWithOnlyWithNumbersAsKey (line 433) | func TestSliceWithOnlyWithNumbersAsKey(t *testing.T) { function TestMapWithOnlyWithNumbersAsKey (line 455) | func TestMapWithOnlyWithNumbersAsKey(t *testing.T) { function TestBetweenIsBiggerEq (line 477) | func TestBetweenIsBiggerEq(t *testing.T) { function TestBetweenIsBigger (line 498) | func TestBetweenIsBigger(t *testing.T) { function TestUnaryOperation (line 519) | func TestUnaryOperation(t *testing.T) { function TestInOperatorAgainstNil (line 529) | func TestInOperatorAgainstNil(t *testing.T) { function TestReduceFilterAndContains (line 551) | func TestReduceFilterAndContains(t *testing.T) { function TestReduceFilterAndNotContains (line 566) | func TestReduceFilterAndNotContains(t *testing.T) { function TestReduceWithUnsupportedValue (line 581) | func TestReduceWithUnsupportedValue(t *testing.T) { function TestAddOperator (line 594) | func TestAddOperator(t *testing.T) { function TestInWithOneParam (line 617) | func TestInWithOneParam(t *testing.T) { function TestEqualWithList (line 631) | func TestEqualWithList(t *testing.T) { function TestMinusWithEmptyList (line 645) | func TestMinusWithEmptyList(t *testing.T) { function TestDivWithEmptyList (line 659) | func TestDivWithEmptyList(t *testing.T) { FILE: lists.go type ErrReduceDataType (line 12) | type ErrReduceDataType struct method Error (line 16) | func (e ErrReduceDataType) Error() string { function extractSubject (line 20) | func extractSubject(parsed []any, data any) any { function filter (line 34) | func filter(values, data any) any { function _map (line 65) | func _map(values, data any) any { function reduce (line 91) | func reduce(values, data any) any { function _in (line 157) | func _in(values, data any) any { function merge (line 201) | func merge(values, data any) any { function missing (line 236) | func missing(values, data any) any { function missingSome (line 255) | func missingSome(values, data any) any { function all (line 281) | func all(values, data any) any { function none (line 301) | func none(values, data any) any { function some (line 323) | func some(values, data any) any { function _inRange (line 344) | func _inRange(value any, values []any) bool { FILE: lists_test.go function TestFilterParseTheSubjectFromFirstPosition (line 13) | func TestFilterParseTheSubjectFromFirstPosition(t *testing.T) { function TestFilterParseTheSubjectFromNullValue (line 26) | func TestFilterParseTheSubjectFromNullValue(t *testing.T) { function TestReduceSkipNullValues (line 39) | func TestReduceSkipNullValues(t *testing.T) { function TestReduceBoolValues (line 53) | func TestReduceBoolValues(t *testing.T) { function TestReduceStringValues (line 67) | func TestReduceStringValues(t *testing.T) { function TestFilterWithMissingLogicArgument (line 81) | func TestFilterWithMissingLogicArgument(t *testing.T) { function TestMapWithMissingLogicArgument (line 91) | func TestMapWithMissingLogicArgument(t *testing.T) { function TestReduceWithMissingInitialValue (line 101) | func TestReduceWithMissingInitialValue(t *testing.T) { FILE: logic.go function _and (line 7) | func _and(values, data any) any { function _or (line 21) | func _or(values, data any) any { function evaluateClause (line 35) | func evaluateClause(clause any, data any) any { function conditional (line 45) | func conditional(values, data any) any { function negative (line 74) | func negative(values, data any) any { FILE: math.go function mod (line 9) | func mod(values, data any) any { function abs (line 20) | func abs(values, data any) any { function sum (line 29) | func sum(values, data any) any { function minus (line 54) | func minus(values, data any) any { function mult (line 73) | func mult(values, data any) any { function div (line 85) | func div(values, data any) any { function max (line 100) | func max(values, data any) any { function min (line 120) | func min(values, data any) any { FILE: math_test.go function TestSubOperation (line 12) | func TestSubOperation(t *testing.T) { function TestAbsOperationWithScalar (line 30) | func TestAbsOperationWithScalar(t *testing.T) { function TestAbsOperationWithArray (line 45) | func TestAbsOperationWithArray(t *testing.T) { function TestSumOperationWithEmptyArray (line 60) | func TestSumOperationWithEmptyArray(t *testing.T) { FILE: operation.go type OperatorFn (line 12) | type OperatorFn type ErrInvalidOperator (line 16) | type ErrInvalidOperator struct method Error (line 20) | func (e ErrInvalidOperator) Error() string { function AddOperator (line 37) | func AddOperator(key string, cb OperatorFn) { function operation (line 46) | func operation(operator string, values, data any) any { function init (line 59) | func init() { FILE: operation_test.go function TestConcurrentValidationAndAddOperator (line 12) | func TestConcurrentValidationAndAddOperator(t *testing.T) { function TestConcurrentApplyAndAddOperator (line 45) | func TestConcurrentApplyAndAddOperator(t *testing.T) { FILE: strings.go function substr (line 9) | func substr(values, data any) any { function concat (line 46) | func concat(values, data any) any { FILE: strings_test.go function TestCat (line 12) | func TestCat(t *testing.T) { FILE: validator.go function IsValid (line 20) | func IsValid(rule io.Reader) bool { function ValidateJsonLogic (line 42) | func ValidateJsonLogic(rules any) bool { function isOperator (line 85) | func isOperator(op string) bool { function isVar (line 92) | func isVar(value any) bool { FILE: validator_test.go function TestJSONLogicValidator (line 14) | func TestJSONLogicValidator(t *testing.T) { FILE: vars.go function solveVars (line 11) | func solveVars(values, data any) any { function getVar (line 50) | func getVar(values, data any) any { function solveVarsBackToJsonLogic (line 117) | func solveVarsBackToJsonLogic(rule, data any) (json.RawMessage, error) { function deepCopyMap (line 143) | func deepCopyMap(v any) any { function setProperty (line 162) | func setProperty(values, data any) any { FILE: vars_test.go function TestSetProperty (line 12) | func TestSetProperty(t *testing.T) { function TestSetPropertyWithNonMapInput (line 31) | func TestSetPropertyWithNonMapInput(t *testing.T) { function TestGetJsonLogicWithSolvedVarsInvalidRule (line 50) | func TestGetJsonLogicWithSolvedVarsInvalidRule(t *testing.T) { function TestGetJsonLogicWithSolvedVarsInvalidData (line 58) | func TestGetJsonLogicWithSolvedVarsInvalidData(t *testing.T) { function TestGetJsonLogicWithSolvedVarsNoData (line 66) | func TestGetJsonLogicWithSolvedVarsNoData(t *testing.T) { function TestSolveVarsBackToJsonLogicWithUnicodeChars (line 79) | func TestSolveVarsBackToJsonLogicWithUnicodeChars(t *testing.T) { function TestGetVarWithOutOfBoundsArrayIndex (line 92) | func TestGetVarWithOutOfBoundsArrayIndex(t *testing.T) { function TestGetVarWithOutOfBoundsArrayIndexReturnsDefault (line 101) | func TestGetVarWithOutOfBoundsArrayIndexReturnsDefault(t *testing.T) { function TestSetPropertyWithMissingValueArgument (line 110) | func TestSetPropertyWithMissingValueArgument(t *testing.T) { function TestSetPropertyWithOnlyObjectArgument (line 118) | func TestSetPropertyWithOnlyObjectArgument(t *testing.T) {