public static Set<Symbol> extractUnique(RowExpression expression)
    {
        return ImmutableSet.copyOf(extractAll(expression).stream().map(variable -> new Symbol(variable.getName())).collect(toSet()));
    }
public static Set < Symbol > extractUnique ( RowExpression expression ) { return ImmutableSet . copyOf ( extractAll ( expression ) . stream ( ) . map ( variable -> new Symbol ( variable . getName ( ) ) ) . collect ( toSet ( ) ) ) ; }
TODO: return Set<VariableReferenceExpression>