All files / output cl_numberrange_runtime.clas.mjs

30% Statements 18/60
100% Branches 2/2
12.5% Functions 1/8
30% Lines 18/60

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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 601x 1x 1x 1x 1x 1x 1x 1x 1x             1x       1x     1x                                                               1x 1x 1x 1x 1x 1x
const {cx_root} = await import("./cx_root.clas.mjs");
// cl_numberrange_runtime.clas.abap
class cl_numberrange_runtime {
  static INTERNAL_TYPE = 'CLAS';
  static INTERNAL_NAME = 'CL_NUMBERRANGE_RUNTIME';
  static IMPLEMENTED_INTERFACES = [];
  static ATTRIBUTES = {};
  static METHODS = {"NUMBER_GET": {"visibility": "U", "parameters": {"NR_RANGE_NR": {"type": () => {return new abap.types.Character(2, {"qualifiedName":"cl_numberrange_runtime=>nr_interval"});}, "is_optional": " "}, "OBJECT": {"type": () => {return new abap.types.Character(10, {"qualifiedName":"cl_numberrange_runtime=>nr_object"});}, "is_optional": " "}, "NUMBER": {"type": () => {return new abap.types.Numc({length: 20, qualifiedName: "cl_numberrange_runtime=>nr_number"});}, "is_optional": " "}}}};
  constructor() {
    this.me = new abap.types.ABAPObject();
    this.me.set(this);
    this.INTERNAL_ID = abap.internalIdCounter++;
    this.FRIENDS_ACCESS_INSTANCE = {
    };
  }
  async constructor_(INPUT) {
    if (super.constructor_) { await super.constructor_(INPUT); }
    return this;
  }
  async number_get(INPUT) {
    return cl_numberrange_runtime.number_get(INPUT);
  }
  static async number_get(INPUT) {
    let nr_range_nr = INPUT?.nr_range_nr;
    if (nr_range_nr?.getQualifiedName === undefined || nr_range_nr.getQualifiedName() !== "CL_NUMBERRANGE_RUNTIME=>NR_INTERVAL") { nr_range_nr = undefined; }
    if (nr_range_nr === undefined) { nr_range_nr = new abap.types.Character(2, {"qualifiedName":"cl_numberrange_runtime=>nr_interval"}).set(INPUT.nr_range_nr); }
    let object = INPUT?.object;
    if (object?.getQualifiedName === undefined || object.getQualifiedName() !== "CL_NUMBERRANGE_RUNTIME=>NR_OBJECT") { object = undefined; }
    if (object === undefined) { object = new abap.types.Character(10, {"qualifiedName":"cl_numberrange_runtime=>nr_object"}).set(INPUT.object); }
    let number = INPUT?.number || new abap.types.Numc({length: 20, qualifiedName: "cl_numberrange_runtime=>nr_number"});
    try {
      if (abap.FunctionModules['NUMBER_GET_NEXT'] === undefined) { if (abap.Classes['CX_SY_DYN_CALL_ILLEGAL_FUNC'.trimEnd()] === undefined) { throw "CX_SY_DYN_CALL_ILLEGAL_FUNC not found"; } else { throw new abap.Classes['CX_SY_DYN_CALL_ILLEGAL_FUNC'.trimEnd()]();} }
      await abap.FunctionModules['NUMBER_GET_NEXT']({exporting: {nr_range_nr: nr_range_nr, object: object}, importing: {number: number}});
      abap.builtin.sy.get().subrc.set(0);
    } catch (e) {
      if (e.classic) {
          switch (e.classic.toUpperCase()) {
          case "INTERVAL_NOT_FOUND": abap.builtin.sy.get().subrc.set(1); break;
          case "NUMBER_RANGE_NOT_INTERN": abap.builtin.sy.get().subrc.set(2); break;
          case "OBJECT_NOT_FOUND": abap.builtin.sy.get().subrc.set(3); break;
          case "QUANTITY_IS_0": abap.builtin.sy.get().subrc.set(4); break;
          case "QUANTITY_IS_NOT_1": abap.builtin.sy.get().subrc.set(5); break;
          case "INTERVAL_OVERFLOW": abap.builtin.sy.get().subrc.set(6); break;
          case "BUFFER_OVERFLOW": abap.builtin.sy.get().subrc.set(7); break;
          default: abap.builtin.sy.get().subrc.set(8); break;
            }
        } else {
            throw e;
        }
      }
      if (abap.compare.ne(abap.builtin.sy.get().subrc, abap.IntegerFactory.get(0))) {
        return;
      }
    }
  }
  abap.Classes['CL_NUMBERRANGE_RUNTIME'] = cl_numberrange_runtime;
  cl_numberrange_runtime.nr_interval = new abap.types.Character(2, {"qualifiedName":"cl_numberrange_runtime=>nr_interval"});
  cl_numberrange_runtime.nr_object = new abap.types.Character(10, {"qualifiedName":"cl_numberrange_runtime=>nr_object"});
  cl_numberrange_runtime.nr_number = new abap.types.Numc({length: 20, qualifiedName: "cl_numberrange_runtime=>nr_number"});
export {cl_numberrange_runtime};