tokens.consume(L_PAREN); // must have opening paren
int numLeft = 1;
int numRight = 0;
// must have content between the parens
if (!tokens.matches(R_PAREN)) {
final List<String> possibleColumns = new ArrayList<String>(); // dimension table columns
final List<String> functions = new ArrayList<String>(); // functions, constants
final StringBuilder text = new StringBuilder();
boolean isFunction = false;