effectively repeating the first 40 odd characters, as there isn't much else you'd typically want to do in a folder.
To-Be:
Allow a "set" unresolved function with a standard lambda variable name of thecurrent:
set(field1 = value1, fieldN.nested = valueN)
this will parse as UnresolvedFunction "set", with arguements of EqualTo( UnresolvedAttribute, value expression) which is easy to convert. When the current output is required they can use "thecurrent" or whatever the name is, or break out into the full syntax.
bonus is the parser will verify the dotted name pattern is correct for an attribute, as if it's not an EqualTo( UnresolvedAttribute pattern we can throw early.
As-Is:
Each output expression has the shape:
effectively repeating the first 40 odd characters, as there isn't much else you'd typically want to do in a folder.
To-Be:
Allow a "set" unresolved function with a standard lambda variable name of thecurrent:
this will parse as UnresolvedFunction "set", with arguements of EqualTo( UnresolvedAttribute, value expression) which is easy to convert. When the current output is required they can use "thecurrent" or whatever the name is, or break out into the full syntax.
bonus is the parser will verify the dotted name pattern is correct for an attribute, as if it's not an EqualTo( UnresolvedAttribute pattern we can throw early.