All files / output cl_abap_datadescr.clas.mjs

68.18% Statements 30/44
100% Branches 4/4
30% Functions 3/10
68.18% Lines 30/44

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 441x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 12641x 12641x 12641x 12641x 12641x 12641x 12641x 12641x 12641x 1x 12641x 12641x 12641x 1x     1x               1x           1x 1x 1x
const {cl_abap_typedescr} = await import("./cl_abap_typedescr.clas.mjs");
const {cx_root} = await import("./cx_root.clas.mjs");
// cl_abap_datadescr.clas.abap
class cl_abap_datadescr extends cl_abap_typedescr {
  static INTERNAL_TYPE = 'CLAS';
  static INTERNAL_NAME = 'CL_ABAP_DATADESCR';
  static IMPLEMENTED_INTERFACES = [];
  static ATTRIBUTES = {};
  static METHODS = {"GET_DATA_TYPE_KIND": {"visibility": "U", "parameters": {"P_TYPE_KIND": {"type": () => {return new abap.types.Character(1, {"qualifiedName":"abap_typekind"});}, "is_optional": " "}, "P_DATA": {"type": () => {return new abap.types.Character(4);}, "is_optional": " "}}},
  "APPLIES_TO_DATA": {"visibility": "U", "parameters": {"P_FLAG": {"type": () => {return new abap.types.Character(1, {"qualifiedName":"ABAP_BOOL","ddicName":"ABAP_BOOL"});}, "is_optional": " "}, "P_DATA": {"type": () => {return new abap.types.Character(4);}, "is_optional": " "}}}};
  constructor() {
    const sup = super();
    this.me = new abap.types.ABAPObject();
    this.me.set(this);
    this.INTERNAL_ID = abap.internalIdCounter++;
    this.FRIENDS_ACCESS_INSTANCE = {
      "SUPER": sup.FRIENDS_ACCESS_INSTANCE,
      "applies_to_data": this.applies_to_data.bind(this),
    };
  }
  async constructor_(INPUT) {
    if (super.constructor_) { await super.constructor_(INPUT); }
    return this;
  }
  async get_data_type_kind(INPUT) {
    return cl_abap_datadescr.get_data_type_kind(INPUT);
  }
  static async get_data_type_kind(INPUT) {
    let p_type_kind = new abap.types.Character(1, {"qualifiedName":"abap_typekind"});
    let p_data = INPUT?.p_data;
    let descr = new abap.types.ABAPObject({qualifiedName: "CL_ABAP_TYPEDESCR", RTTIName: "\\CLASS=CL_ABAP_TYPEDESCR"});
    descr.set((await abap.Classes['CL_ABAP_TYPEDESCR'].describe_by_data({p_data: p_data})));
    p_type_kind.set(descr.get().type_kind);
    return p_type_kind;
  }
  async applies_to_data(INPUT) {
    let p_flag = new abap.types.Character(1, {"qualifiedName":"ABAP_BOOL","ddicName":"ABAP_BOOL"});
    let p_data = INPUT?.p_data;
    abap.statements.assert(abap.compare.eq(abap.IntegerFactory.get(1), abap.CharacterFactory.get(4, 'todo')));
    return p_flag;
  }
}
abap.Classes['CL_ABAP_DATADESCR'] = cl_abap_datadescr;
export {cl_abap_datadescr};