@Override
        public Void visitFunction(FunctionExpression expression) {
            // e.g.: some_function(@, foo)
            builder.append(expression.getName());
            builder.append('(');
            for (int i = 0; i < expression.getArguments().size(); i++) {
                expression.getArguments().get(i).accept(this);
                if (i < expression.getArguments().size() - 1) {
                    builder.append(", ");
                }
            }
            builder.append(')');
            return null;
        }
Serialize the given JMESPath expression to a string.

@param expression JMESPath expression to serialize.
@return Returns the serialized expression.
smithy-jmespath/src/main/java/software/amazon/smithy/jmespath/ExpressionSerializer.java