All files / src/abap/2_statements/statements delete_database.ts

100% Statements 26/26
100% Branches 1/1
100% Functions 1/1
100% Lines 26/26

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 261x 1x 1x 1x 1x 1x 1x 1x 1x 37x 37x 37x 37x 37x 37x 37x 37x 37x 37x 37x 37x 37x 37x 37x 1x 1x
import {IStatement} from "./_statement";
import {seq, optPrio, alt, opt} from "../combi";
import {Dynamic, SQLCond, DatabaseTable, SQLSourceSimple, DatabaseConnection} from "../expressions";
import {IStatementRunnable} from "../statement_runnable";
import {SQLClient} from "../expressions/sql_client";
 
export class DeleteDatabase implements IStatement {
 
  public getMatcher(): IStatementRunnable {
    const where = seq("WHERE", alt(SQLCond, Dynamic));
 
    const from = seq("FROM", DatabaseTable, optPrio(SQLClient), optPrio(DatabaseConnection), opt(where));
 
    const table = seq(DatabaseTable,
                      optPrio(SQLClient),
                      opt(DatabaseConnection),
                      "FROM",
                      opt("TABLE"),
                      SQLSourceSimple);
 
    const ret = seq("DELETE", alt(from, table));
 
    return ret;
  }
 
}