private FunctionCallSlot createFunctionCall(final FunctionCallNode call) { resolver.enterFunction(call.getFunction()); try { final List<Slot<ColumnView>> argumentSlots = Lists.newArrayList(); for (FormulaNode argument : call.getArguments()) { argumentSlots.add(argument.accept(this)); } return new FunctionCallSlot((ColumnFunction)call.getFunction(), argumentSlots); } finally { resolver.exitFunction(call.getFunction()); } }