Currently we have to create a name:value mapping when evaluating expression against each row. Then every time we get a certain column value we have to look up this map. This is inefficient and unnecessary:
|
eval(expr)(ec.withVars(df.schema.map(_._1).zip(record).toMap)) match { |