recreateMacros method

void recreateMacros()

Implementation

void recreateMacros() {
  if (macroCheck) {
    TConnOptions connOptions;
    if (_database != null) {
      connOptions = _database!.connOptions;
    } else {
      connOptions = {TConnOption.sqEscapeRepeat, TConnOption.sqEscapeSlash};
    }
    final newParams = createParams();
    final po = <TSQLParseOption>{
      TSQLParseOption.spoCreate,
      TSQLParseOption.spoUseMacro
    };
    if (connOptions.contains(TConnOption.sqEscapeSlash)) {
      po.add(TSQLParseOption.spoEscapeSlash);
    }
    if (connOptions.contains(TConnOption.sqEscapeRepeat)) {
      po.add(TSQLParseOption.spoEscapeRepeat);
    }
    final pb = <int>[];
    final rs = TStringRef("");
    newParams.doParseSQL(
        _sql.text, po, TParamStyle.psInterbase, pb, macroChar, rs);
    newParams.assignValues(_macros);
    _macros.assign(newParams);
  }
}