validates(:withdrawal, presence: [message: "expected"],
by: [function: &Test.test(&1, Map.get(&2, :funds_balance)),
message: "invalid withdrawal."])
Map.get(&2, :funds_balance) will evaluate to the value held in funds_balance and @enforce_keys guarantee a non nil value. And i have tested it with a non-nil value.
The function Test.test has an arity of 2 and accepts two values &1: withdrawal (which is being evaluated) and the outcome of evaluating Map.get&2: funds balance resulting in an evaluation which is either false or true
So as a result, the function for the validator above will return true or false.
What I believe is the anon function utilizing the Vex.validator does not seem to like having a nested function using a capture operator. So im checking my understanding.


















