All files / output cl_abap_conv_codepage.clas.locals.mjs

100% Statements 75/75
75% Branches 12/16
71.42% Functions 10/14
100% Lines 75/75

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 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 751x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 147x 147x 147x 147x 147x 147x 147x 145x 147x 1x 1x 109x 109x 109x 109x 109x 109x 109x 109x 109x 109x 109x 109x 109x 109x 109x 109x 109x 109x 109x 109x 109x 109x 109x 109x 109x 343x 343x 343x 343x 343x 343x 343x 343x 343x 109x 1x 1x
const {cx_root} = await import("./cx_root.clas.mjs");
// cl_abap_conv_codepage.clas.locals_imp.abap
class lcl_in {
  static STATIC_SUPER = undefined;
  static INTERNAL_TYPE = 'CLAS';
  static INTERNAL_NAME = 'CLAS-CL_ABAP_CONV_CODEPAGE-LCL_IN';
  static IMPLEMENTED_INTERFACES = ["IF_ABAP_CONV_IN"];
  static ATTRIBUTES = {"MV_ENCODING": {"type": () => {return new abap.types.Character(20, {"qualifiedName":"abap_encoding"});}, "visibility": "I", "is_constant": " ", "is_class": " "}};
  static METHODS = {"CONSTRUCTOR": {"visibility": "U", "parameters": {"CODEPAGE": {"type": () => {return new abap.types.Character(20, {"qualifiedName":"abap_encoding"});}, "is_optional": " ", "parm_kind": "I", "type_name": "CharacterType"}}}};
  #mv_encoding;
  constructor() {
    this.me = new abap.types.ABAPObject();
    this.me.set(this);
    this.INTERNAL_ID = abap.internalIdCounter++;
    this.FRIENDS_ACCESS_INSTANCE = {
    };
    this.#mv_encoding = new abap.types.Character(20, {"qualifiedName":"abap_encoding"});
    this.FRIENDS_ACCESS_INSTANCE["mv_encoding"] = this.#mv_encoding;
  }
  async constructor_(INPUT) {
    let codepage = INPUT?.codepage;
    if (codepage?.getQualifiedName === undefined || codepage.getQualifiedName() !== "ABAP_ENCODING") { codepage = undefined; }
    if (codepage === undefined) { codepage = new abap.types.Character(20, {"qualifiedName":"abap_encoding"}).set(INPUT.codepage); }
    this.#mv_encoding.set(codepage);
    return this;
  }
  async if_abap_conv_in$convert(INPUT) {
    let result = new abap.types.String({qualifiedName: "STRING"});
    let source = INPUT?.source;
    if (source?.getQualifiedName === undefined || source.getQualifiedName() !== "XSTRING") { source = undefined; }
    if (source === undefined) { source = new abap.types.XString({qualifiedName: "XSTRING"}).set(INPUT.source); }
    let conv = new abap.types.ABAPObject({qualifiedName: "CL_ABAP_CONV_IN_CE", RTTIName: "\\CLASS=CL_ABAP_CONV_IN_CE"});
    conv.set((await abap.Classes['CL_ABAP_CONV_IN_CE'].create({encoding: this.#mv_encoding})));
    await conv.get().convert({input: source, data: result});
    return result;
  }
}
abap.Classes['CLAS-CL_ABAP_CONV_CODEPAGE-LCL_IN'] = lcl_in;
class lcl_out {
  static STATIC_SUPER = undefined;
  static INTERNAL_TYPE = 'CLAS';
  static INTERNAL_NAME = 'CLAS-CL_ABAP_CONV_CODEPAGE-LCL_OUT';
  static IMPLEMENTED_INTERFACES = ["IF_ABAP_CONV_OUT"];
  static ATTRIBUTES = {"MV_ENCODING": {"type": () => {return new abap.types.Character(20, {"qualifiedName":"abap_encoding"});}, "visibility": "I", "is_constant": " ", "is_class": " "}};
  static METHODS = {"CONSTRUCTOR": {"visibility": "U", "parameters": {"CODEPAGE": {"type": () => {return new abap.types.Character(20, {"qualifiedName":"abap_encoding"});}, "is_optional": " ", "parm_kind": "I", "type_name": "CharacterType"}}}};
  #mv_encoding;
  constructor() {
    this.me = new abap.types.ABAPObject();
    this.me.set(this);
    this.INTERNAL_ID = abap.internalIdCounter++;
    this.FRIENDS_ACCESS_INSTANCE = {
    };
    this.#mv_encoding = new abap.types.Character(20, {"qualifiedName":"abap_encoding"});
    this.FRIENDS_ACCESS_INSTANCE["mv_encoding"] = this.#mv_encoding;
  }
  async constructor_(INPUT) {
    let codepage = INPUT?.codepage;
    if (codepage?.getQualifiedName === undefined || codepage.getQualifiedName() !== "ABAP_ENCODING") { codepage = undefined; }
    if (codepage === undefined) { codepage = new abap.types.Character(20, {"qualifiedName":"abap_encoding"}).set(INPUT.codepage); }
    this.#mv_encoding.set(codepage);
    return this;
  }
  async if_abap_conv_out$convert(INPUT) {
    let result = new abap.types.XString({qualifiedName: "XSTRING"});
    let source = INPUT?.source;
    if (source?.getQualifiedName === undefined || source.getQualifiedName() !== "STRING") { source = undefined; }
    if (source === undefined) { source = new abap.types.String({qualifiedName: "STRING"}).set(INPUT.source); }
    let conv = new abap.types.ABAPObject({qualifiedName: "CL_ABAP_CONV_OUT_CE", RTTIName: "\\CLASS=CL_ABAP_CONV_OUT_CE"});
    conv.set((await abap.Classes['CL_ABAP_CONV_OUT_CE'].create({encoding: this.#mv_encoding})));
    await conv.get().convert({data: source, buffer: result});
    return result;
  }
}
abap.Classes['CLAS-CL_ABAP_CONV_CODEPAGE-LCL_OUT'] = lcl_out;
export {lcl_in, lcl_out};