docs: function (tableAlias) {
              tableAlias = this._toTableName(tableAlias);
              var usedAliases = [], from, join;
              if ((from = this.__opts.from) != null) {
                  usedAliases = usedAliases.concat(from.map(function (n) {
                      return this._toTableName(n);
                  }, this));
              }
              if ((join = this.__opts.join) != null) {
                  usedAliases = usedAliases.concat(join.map(function (join) {
                      if (join.tableAlias) {
                          return this.__toAliasedTableName(join.tableAlias);
                      } else {
                          return this._toTableName(join.table);
                      }
                  }, this));
              }
              if (usedAliases.indexOf(tableAlias) !== -1) {
                  var base = tableAlias, i = 0;
                  do {
                      tableAlias = string.format("%s%d", base, i++);
                  } while (usedAliases.indexOf(tableAlias) !== -1);
              }
              return tableAlias;
          }