presto-main/src/main/java/io/prestosql/sql/planner/SymbolAllocator.java/SymbolAllocator/newSymbol
class SymbolAllocator:    public Symbol newSymbol(Expression expression, Type type, String suffix)
    {
        String nameHint = "expr";
        if (expression instanceof Identifier) {
            nameHint = ((Identifier) expression).getValue();
        }
        else if (expression instanceof FunctionCall) {
            FunctionCall functionCall = (FunctionCall) expression;
            nameHint = ResolvedFunction.fromQualifiedName(functionCall.getName())
                    .map(ResolvedFunction::getSignature)
                    .map(Signature::getName)
                    .orElse(functionCall.getName().getSuffix());
        }
        else if (expression instanceof SymbolReference) {
            nameHint = ((SymbolReference) expression).getName();
        }
        else if (expression instanceof GroupingOperation) {
            nameHint = "grouping";
        }

        return newSymbol(nameHint, type, suffix);
    }