the json representing this predicate
an 'array contains' JPart for this predicate
the json to match
true if this predicate matches
This is an interesting scala question/problem ... we just have json numbers, so we don't know if they're ints, longs, big decimals, etc.
Presumably we want to avoid a costly bigdecimal conversion/comparison (or perhaps not ... I need to check the actual overhead). But assuming we do, then we want subclasses to provide the minimum overhead. We shouldn't make them e.g. specify "greater than or equal to" for each numeric type (BigDecimal and Long), but rather just use long and then fall-back on big decimal if that's what we need.