Open
Description
LiteralMapExpression
does not yet support collection-if. This means it's not possible to generate the following:
{
if (x != null) 'x' : x,
if (y != null) 'y': y,
if (z != null) 'z': z,
}
I need to be able to add these conditions in order to minimize the text-rendered size of sparse JSON maps.
Presumably the way to support this would be similar to how literalSpread
works:
literalMap({
collectionIf(refer('x').isNotNull(), 'x'): refer('x'),
// ...
})
Expression.visitLiteralMapExpression
will also need to be updated to support this (and it should work for sets and lists too)..