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 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 | 1x 1x 1x 1x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 1x 1x 1x 1x 1x 1x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 6x 3x 3x 3x 3x 3x 3x 3x 3x 3x 3x 3x 3x 3x 6x 1x 1x 1x 1x 1x 1x 1x 6x 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 1x 1x 1x 6x 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 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 6x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 6x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 6x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 6x 1x 1x | const {zcl_abapgit_json_path} = await import("./zcl_abapgit_json_path.clas.mjs");
const {lcl_json_path} = await import("./zcl_abapgit_json_path.clas.locals.mjs");
const {cx_root} = await import("./cx_root.clas.mjs");
// zcl_abapgit_json_path.clas.testclasses.abap
class ltcl_json_path {
static STATIC_SUPER = undefined;
static INTERNAL_TYPE = 'CLAS';
static INTERNAL_NAME = 'CLAS-ZCL_ABAPGIT_JSON_PATH-LTCL_JSON_PATH';
static IMPLEMENTED_INTERFACES = [];
static ATTRIBUTES = {"MT_ACT": {"type": () => {return abap.types.TableFactory.construct(new abap.types.String({qualifiedName: "STRING"}), {"withHeader":false,"keyType":"DEFAULT","primaryKey":{"isUnique":false,"type":"STANDARD","keyFields":[],"name":"primary_key"},"secondary":[]}, "STRING_TABLE");}, "visibility": "I", "is_constant": " ", "is_class": " "},
"MT_EXP": {"type": () => {return abap.types.TableFactory.construct(new abap.types.String({qualifiedName: "STRING"}), {"withHeader":false,"keyType":"DEFAULT","primaryKey":{"isUnique":false,"type":"STANDARD","keyFields":[],"name":"primary_key"},"secondary":[]}, "STRING_TABLE");}, "visibility": "I", "is_constant": " ", "is_class": " "},
"MS_DATA": {"type": () => {return new abap.types.Structure({
"format_version": new abap.types.String({qualifiedName: "ZIF_ABAPGIT_AFF_TYPES_V1=>TY_FORMAT_VERSION"}),
"header": new abap.types.Structure({
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"}),
"original_language": new abap.types.Character(1, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_original_language","conversionExit":"ISOLA"}),
"abap_language_version": new abap.types.Character(1, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_abap_language_version_src"})}, "zif_abapgit_aff_types_v1=>ty_header_60_src", undefined, {}, {}),
"category": new abap.types.Numc({length: 2, qualifiedName: "zif_abapgit_aff_intf_v1=>ty_category"}),
"proxy": new abap.types.Character(1, {"qualifiedName":"ABAP_BOOL","ddicName":"ABAP_BOOL"}),
"descriptions": new abap.types.Structure({
"types": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions"),
"attributes": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions"),
"events": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"}),
"parameters": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions")}, "zif_abapgit_aff_oo_types_v1=>ty_event", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_events"),
"methods": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"}),
"parameters": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions"),
"exceptions": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions")}, "zif_abapgit_aff_oo_types_v1=>ty_method", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_methods")}, "zif_abapgit_aff_oo_types_v1=>ty_descriptions", undefined, {}, {})}, "zif_abapgit_aff_intf_v1=>ty_main", undefined, {}, {});}, "visibility": "I", "is_constant": " ", "is_class": " "}};
static METHODS = {"DESERIALIZE_SIMPLE": {"visibility": "I", "parameters": {}},
"DESERIALIZE_NESTED_ARRAYS": {"visibility": "I", "parameters": {}},
"FLAT_STRUCTURE": {"visibility": "I", "parameters": {}},
"ARRAY": {"visibility": "I", "parameters": {}},
"ARRAY_NESTED": {"visibility": "I", "parameters": {}},
"DESERIALIZE_WITH_COMMENTS": {"visibility": "I", "parameters": {}},
"SERIALIZE": {"visibility": "I", "parameters": {"RT_RESULT": {"type": () => {return abap.types.TableFactory.construct(new abap.types.String({qualifiedName: "STRING"}), {"withHeader":false,"keyType":"DEFAULT","primaryKey":{"isUnique":false,"type":"STANDARD","keyFields":[],"name":"primary_key"},"secondary":[]}, "STRING_TABLE");}, "is_optional": " ", "parm_kind": "R", "type_name": "TableType"}, "IS_DATA": {"type": () => {return new abap.types.Structure({
"format_version": new abap.types.String({qualifiedName: "ZIF_ABAPGIT_AFF_TYPES_V1=>TY_FORMAT_VERSION"}),
"header": new abap.types.Structure({
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"}),
"original_language": new abap.types.Character(1, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_original_language","conversionExit":"ISOLA"}),
"abap_language_version": new abap.types.Character(1, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_abap_language_version_src"})}, "zif_abapgit_aff_types_v1=>ty_header_60_src", undefined, {}, {}),
"category": new abap.types.Numc({length: 2, qualifiedName: "zif_abapgit_aff_intf_v1=>ty_category"}),
"proxy": new abap.types.Character(1, {"qualifiedName":"ABAP_BOOL","ddicName":"ABAP_BOOL"}),
"descriptions": new abap.types.Structure({
"types": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions"),
"attributes": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions"),
"events": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"}),
"parameters": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions")}, "zif_abapgit_aff_oo_types_v1=>ty_event", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_events"),
"methods": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"}),
"parameters": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions"),
"exceptions": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions")}, "zif_abapgit_aff_oo_types_v1=>ty_method", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_methods")}, "zif_abapgit_aff_oo_types_v1=>ty_descriptions", undefined, {}, {})}, "zif_abapgit_aff_intf_v1=>ty_main", undefined, {}, {});}, "is_optional": " ", "parm_kind": "I", "type_name": "StructureType"}}}};
#mt_act;
#mt_exp;
#ms_data;
constructor() {
this.me = new abap.types.ABAPObject();
this.me.set(this);
this.INTERNAL_ID = abap.internalIdCounter++;
this.FRIENDS_ACCESS_INSTANCE = {
"deserialize_simple": this.#deserialize_simple.bind(this),
"deserialize_nested_arrays": this.#deserialize_nested_arrays.bind(this),
"flat_structure": this.#flat_structure.bind(this),
"array": this.#array.bind(this),
"array_nested": this.#array_nested.bind(this),
"deserialize_with_comments": this.#deserialize_with_comments.bind(this),
"serialize": this.#serialize.bind(this),
};
this.#mt_act = abap.types.TableFactory.construct(new abap.types.String({qualifiedName: "STRING"}), {"withHeader":false,"keyType":"DEFAULT","primaryKey":{"isUnique":false,"type":"STANDARD","keyFields":[],"name":"primary_key"},"secondary":[]}, "STRING_TABLE");
this.FRIENDS_ACCESS_INSTANCE["mt_act"] = this.#mt_act;
this.#mt_exp = abap.types.TableFactory.construct(new abap.types.String({qualifiedName: "STRING"}), {"withHeader":false,"keyType":"DEFAULT","primaryKey":{"isUnique":false,"type":"STANDARD","keyFields":[],"name":"primary_key"},"secondary":[]}, "STRING_TABLE");
this.FRIENDS_ACCESS_INSTANCE["mt_exp"] = this.#mt_exp;
this.#ms_data = new abap.types.Structure({
"format_version": new abap.types.String({qualifiedName: "ZIF_ABAPGIT_AFF_TYPES_V1=>TY_FORMAT_VERSION"}),
"header": new abap.types.Structure({
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"}),
"original_language": new abap.types.Character(1, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_original_language","conversionExit":"ISOLA"}),
"abap_language_version": new abap.types.Character(1, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_abap_language_version_src"})}, "zif_abapgit_aff_types_v1=>ty_header_60_src", undefined, {}, {}),
"category": new abap.types.Numc({length: 2, qualifiedName: "zif_abapgit_aff_intf_v1=>ty_category"}),
"proxy": new abap.types.Character(1, {"qualifiedName":"ABAP_BOOL","ddicName":"ABAP_BOOL"}),
"descriptions": new abap.types.Structure({
"types": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions"),
"attributes": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions"),
"events": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"}),
"parameters": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions")}, "zif_abapgit_aff_oo_types_v1=>ty_event", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_events"),
"methods": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"}),
"parameters": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions"),
"exceptions": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions")}, "zif_abapgit_aff_oo_types_v1=>ty_method", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_methods")}, "zif_abapgit_aff_oo_types_v1=>ty_descriptions", undefined, {}, {})}, "zif_abapgit_aff_intf_v1=>ty_main", undefined, {}, {});
this.FRIENDS_ACCESS_INSTANCE["ms_data"] = this.#ms_data;
}
async constructor_(INPUT) {
if (super.constructor_) { await super.constructor_(INPUT); }
return this;
}
async #serialize(INPUT) {
let rt_result = abap.types.TableFactory.construct(new abap.types.String({qualifiedName: "STRING"}), {"withHeader":false,"keyType":"DEFAULT","primaryKey":{"isUnique":false,"type":"STANDARD","keyFields":[],"name":"primary_key"},"secondary":[]}, "STRING_TABLE");
let is_data = INPUT?.is_data;
if (is_data?.getQualifiedName === undefined || is_data.getQualifiedName() !== "ZIF_ABAPGIT_AFF_INTF_V1=>TY_MAIN") { is_data = undefined; }
if (is_data === undefined) { is_data = new abap.types.Structure({
"format_version": new abap.types.String({qualifiedName: "ZIF_ABAPGIT_AFF_TYPES_V1=>TY_FORMAT_VERSION"}),
"header": new abap.types.Structure({
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"}),
"original_language": new abap.types.Character(1, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_original_language","conversionExit":"ISOLA"}),
"abap_language_version": new abap.types.Character(1, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_abap_language_version_src"})}, "zif_abapgit_aff_types_v1=>ty_header_60_src", undefined, {}, {}),
"category": new abap.types.Numc({length: 2, qualifiedName: "zif_abapgit_aff_intf_v1=>ty_category"}),
"proxy": new abap.types.Character(1, {"qualifiedName":"ABAP_BOOL","ddicName":"ABAP_BOOL"}),
"descriptions": new abap.types.Structure({
"types": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions"),
"attributes": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions"),
"events": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"}),
"parameters": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions")}, "zif_abapgit_aff_oo_types_v1=>ty_event", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_events"),
"methods": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"}),
"parameters": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions"),
"exceptions": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions")}, "zif_abapgit_aff_oo_types_v1=>ty_method", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_methods")}, "zif_abapgit_aff_oo_types_v1=>ty_descriptions", undefined, {}, {})}, "zif_abapgit_aff_intf_v1=>ty_main", undefined, {}, {}).set(INPUT.is_data); }
let lo_ajson = new abap.types.ABAPObject({qualifiedName: "ZIF_ABAPGIT_AJSON", RTTIName: "\\INTERFACE=ZIF_ABAPGIT_AJSON"});
let lo_cut = new abap.types.ABAPObject({qualifiedName: "ZCL_ABAPGIT_JSON_PATH", RTTIName: "\\CLASS=ZCL_ABAPGIT_JSON_PATH"});
lo_ajson.set((await (await (await (await abap.Classes['ZCL_ABAPGIT_AJSON'].new({iv_keep_item_order: abap.builtin.abap_true})).get().zif_abapgit_ajson$set({iv_path: abap.CharacterFactory.get(1, '/'), iv_val: is_data})).get().zif_abapgit_ajson$map({ii_mapper: (await abap.Classes['ZCL_ABAPGIT_AJSON_MAPPING'].create_to_camel_case())})).get().zif_abapgit_ajson$filter({ii_filter: (await abap.Classes['ZCL_ABAPGIT_AJSON_FILTER_LIB'].create_empty_filter())})));
await lo_ajson.get().zif_abapgit_ajson$delete({iv_path: abap.CharacterFactory.get(10, '/category/')});
await lo_ajson.get().zif_abapgit_ajson$delete({iv_path: abap.CharacterFactory.get(7, '/proxy/')});
lo_cut.set(await (new abap.Classes['ZCL_ABAPGIT_JSON_PATH']()).constructor_());
rt_result.set((await lo_cut.get().serialize({iv_json: (await lo_ajson.get().zif_abapgit_ajson$stringify())})));
return rt_result;
}
async #flat_structure() {
let lv_header_descr = new abap.types.String({qualifiedName: "STRING"});
lv_header_descr.set(new abap.types.String().set(`$.header.description=Text`));
this.#ms_data.get().header.get().description.set(abap.CharacterFactory.get(4, 'Text'));
this.#mt_act.set((await this.#serialize({is_data: this.#ms_data})));
abap.statements.append({source: lv_header_descr, target: this.#mt_exp});
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({exp: this.#mt_exp, act: this.#mt_act});
}
async #array() {
let lv_header_descr = new abap.types.String({qualifiedName: "STRING"});
let lv_descr_meth_1 = new abap.types.String({qualifiedName: "STRING"});
let lv_descr_meth_2 = new abap.types.String({qualifiedName: "STRING"});
let ls_meth_desc = new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"}),
"parameters": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions"),
"exceptions": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions")}, "zif_abapgit_aff_oo_types_v1=>ty_method", undefined, {}, {});
lv_header_descr.set(new abap.types.String().set(`$.header.description=Text`));
lv_descr_meth_1.set(new abap.types.String().set(`$.descriptions.methods[?(@.name=='METH1')].description=Sonne`));
lv_descr_meth_2.set(new abap.types.String().set(`$.descriptions.methods[?(@.name=='METH2')].description=Mond`));
abap.statements.append({source: lv_header_descr, target: this.#mt_exp});
abap.statements.append({source: lv_descr_meth_1, target: this.#mt_exp});
abap.statements.append({source: lv_descr_meth_2, target: this.#mt_exp});
this.#ms_data.get().header.get().description.set(abap.CharacterFactory.get(4, 'Text'));
ls_meth_desc.get().name.set(new abap.types.String().set(`METH1`));
ls_meth_desc.get().description.set(new abap.types.String().set(`Sonne`));
abap.statements.append({source: ls_meth_desc, target: this.#ms_data.get().descriptions.get().methods});
ls_meth_desc.clear();
ls_meth_desc.get().name.set(new abap.types.String().set(`METH2`));
ls_meth_desc.get().description.set(new abap.types.String().set(`Mond`));
abap.statements.append({source: ls_meth_desc, target: this.#ms_data.get().descriptions.get().methods});
this.#mt_act.set((await this.#serialize({is_data: this.#ms_data})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({exp: this.#mt_exp, act: this.#mt_act});
}
async #array_nested() {
let lv_header_descr = new abap.types.String({qualifiedName: "STRING"});
let lv_descr_meth_1 = new abap.types.String({qualifiedName: "STRING"});
let lv_descr_meth_1_param_1 = new abap.types.String({qualifiedName: "STRING"});
let lv_descr_meth_1_param_2 = new abap.types.String({qualifiedName: "STRING"});
let lv_descr_meth_2 = new abap.types.String({qualifiedName: "STRING"});
let ls_meth_desc = new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"}),
"parameters": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions"),
"exceptions": abap.types.TableFactory.construct(new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"SORTED","isUnique":true,"keyFields":["NAME"]},"secondary":[]}, "zif_abapgit_aff_oo_types_v1=>ty_component_descriptions")}, "zif_abapgit_aff_oo_types_v1=>ty_method", undefined, {}, {});
let ls_meth_param = new abap.types.Structure({
"name": new abap.types.Character(30, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_object_name_30"}),
"description": new abap.types.Character(60, {"qualifiedName":"zif_abapgit_aff_types_v1=>ty_description_60"})}, "zif_abapgit_aff_oo_types_v1=>ty_component_description", undefined, {}, {});
lv_header_descr.set(new abap.types.String().set(`$.header.description=Text`));
lv_descr_meth_1.set(new abap.types.String().set(`$.descriptions.methods[?(@.name=='METH1')].description=Sonne`));
lv_descr_meth_1_param_1.set(new abap.types.String().set(`$.descriptions.methods[?(@.name=='METH1')].parameters[?(@.name=='param1')].description=Parameter A`));
lv_descr_meth_1_param_2.set(new abap.types.String().set(`$.descriptions.methods[?(@.name=='METH1')].parameters[?(@.name=='param2')].description=Parameter B`));
lv_descr_meth_2.set(new abap.types.String().set(`$.descriptions.methods[?(@.name=='METH2')].description=Mond`));
abap.statements.append({source: lv_header_descr, target: this.#mt_exp});
abap.statements.append({source: lv_descr_meth_1, target: this.#mt_exp});
abap.statements.append({source: lv_descr_meth_1_param_1, target: this.#mt_exp});
abap.statements.append({source: lv_descr_meth_1_param_2, target: this.#mt_exp});
abap.statements.append({source: lv_descr_meth_2, target: this.#mt_exp});
ls_meth_param.get().name.set(abap.CharacterFactory.get(6, 'param1'));
ls_meth_param.get().description.set(abap.CharacterFactory.get(11, 'Parameter A'));
abap.statements.append({source: ls_meth_param, target: ls_meth_desc.get().parameters});
ls_meth_param.get().name.set(abap.CharacterFactory.get(6, 'param2'));
ls_meth_param.get().description.set(abap.CharacterFactory.get(11, 'Parameter B'));
abap.statements.append({source: ls_meth_param, target: ls_meth_desc.get().parameters});
ls_meth_desc.get().name.set(new abap.types.String().set(`METH1`));
ls_meth_desc.get().description.set(new abap.types.String().set(`Sonne`));
abap.statements.append({source: ls_meth_desc, target: this.#ms_data.get().descriptions.get().methods});
ls_meth_desc.clear();
ls_meth_desc.get().name.set(new abap.types.String().set(`METH2`));
ls_meth_desc.get().description.set(new abap.types.String().set(`Mond`));
abap.statements.append({source: ls_meth_desc, target: this.#ms_data.get().descriptions.get().methods});
this.#ms_data.get().header.get().description.set(abap.CharacterFactory.get(4, 'Text'));
this.#mt_act.set((await this.#serialize({is_data: this.#ms_data})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({exp: this.#mt_exp, act: this.#mt_act});
}
async #deserialize_nested_arrays() {
let lt_file = abap.types.TableFactory.construct(new abap.types.String({qualifiedName: "STRING"}), {"withHeader":false,"keyType":"DEFAULT","primaryKey":{"isUnique":false,"type":"STANDARD","keyFields":[],"name":"primary_key"},"secondary":[]}, "STRING_TABLE");
let lo_cut = new abap.types.ABAPObject({qualifiedName: "ZCL_ABAPGIT_JSON_PATH", RTTIName: "\\CLASS=ZCL_ABAPGIT_JSON_PATH"});
let lv_act = new abap.types.String({qualifiedName: "STRING"});
let lv_exp = new abap.types.String({qualifiedName: "STRING"});
let lt_exp = abap.types.TableFactory.construct(new abap.types.String({qualifiedName: "STRING"}), {"withHeader":false,"keyType":"DEFAULT","primaryKey":{"isUnique":false,"type":"STANDARD","keyFields":[],"name":"primary_key"},"secondary":[]}, "STRING_TABLE");
let lv_is_equal = new abap.types.Character(1, {"qualifiedName":"ABAP_BOOL","ddicName":"ABAP_BOOL"});
abap.statements.append({source: new abap.types.String().set(`$.header.description=Text`), target: lt_file});
abap.statements.append({source: new abap.types.String().set(`$.descriptions.methods[?(@.name=='METH1')].description=Sonne`), target: lt_file});
abap.statements.append({source: new abap.types.String().set(`$.descriptions.methods[?(@.name=='METH1')].parameters[?(@.name=='param2')].description=ABC`), target: lt_file});
lo_cut.set(await (new abap.Classes['ZCL_ABAPGIT_JSON_PATH']()).constructor_());
lv_act.set((await lo_cut.get().deserialize({it_json_path: lt_file})));
abap.statements.append({source: new abap.types.String().set(`{ "header": { "description": "Text" } ,`), target: lt_exp});
abap.statements.append({source: new abap.types.String().set(`"descriptions": {`), target: lt_exp});
abap.statements.append({source: new abap.types.String().set(`"methods": [ `), target: lt_exp});
abap.statements.append({source: new abap.types.String().set(` { "name": "METH1",`), target: lt_exp});
abap.statements.append({source: new abap.types.String().set(`"description": "Sonne",`), target: lt_exp});
abap.statements.append({source: new abap.types.String().set(`"parameters": [ { "name": "param2", "description": "ABC" } ]`), target: lt_exp});
abap.statements.append({source: new abap.types.String().set(`}]}}`), target: lt_exp});
lv_exp.set(abap.builtin.concat_lines_of({table: lt_exp, sep: abap.Classes['CL_ABAP_CHAR_UTILITIES'].newline}));
lv_is_equal.set((await (await abap.Classes['ZCL_ABAPGIT_AJSON_UTILITIES'].new()).get().is_equal({iv_json_a: lv_act, iv_json_b: lv_exp})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_is_equal, exp: abap.builtin.abap_true});
}
async #deserialize_simple() {
let lt_file = abap.types.TableFactory.construct(new abap.types.String({qualifiedName: "STRING"}), {"withHeader":false,"keyType":"DEFAULT","primaryKey":{"isUnique":false,"type":"STANDARD","keyFields":[],"name":"primary_key"},"secondary":[]}, "STRING_TABLE");
let lo_cut = new abap.types.ABAPObject({qualifiedName: "ZCL_ABAPGIT_JSON_PATH", RTTIName: "\\CLASS=ZCL_ABAPGIT_JSON_PATH"});
let lv_act = new abap.types.String({qualifiedName: "STRING"});
let lv_is_equal = new abap.types.Character(1, {"qualifiedName":"ABAP_BOOL","ddicName":"ABAP_BOOL"});
abap.statements.append({source: new abap.types.String().set(`$.header.description=Text`), target: lt_file});
lo_cut.set(await (new abap.Classes['ZCL_ABAPGIT_JSON_PATH']()).constructor_());
lv_act.set((await lo_cut.get().deserialize({it_json_path: lt_file})));
lv_is_equal.set((await (await abap.Classes['ZCL_ABAPGIT_AJSON_UTILITIES'].new()).get().is_equal({iv_json_a: lv_act, iv_json_b: new abap.types.String().set(` { "header": { "description": "Text" } } `)})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_is_equal, exp: abap.builtin.abap_true});
}
async #deserialize_with_comments() {
let lt_file = abap.types.TableFactory.construct(new abap.types.String({qualifiedName: "STRING"}), {"withHeader":false,"keyType":"DEFAULT","primaryKey":{"isUnique":false,"type":"STANDARD","keyFields":[],"name":"primary_key"},"secondary":[]}, "STRING_TABLE");
let lo_cut = new abap.types.ABAPObject({qualifiedName: "ZCL_ABAPGIT_JSON_PATH", RTTIName: "\\CLASS=ZCL_ABAPGIT_JSON_PATH"});
let lv_act = new abap.types.String({qualifiedName: "STRING"});
abap.statements.append({source: new abap.types.String().set(`# comment = abc`), target: lt_file});
abap.statements.append({source: new abap.types.String().set(`!this is a comment [abc]`), target: lt_file});
abap.statements.append({source: new abap.types.String().set(``), target: lt_file});
lo_cut.set(await (new abap.Classes['ZCL_ABAPGIT_JSON_PATH']()).constructor_());
lv_act.set((await lo_cut.get().deserialize({it_json_path: lt_file})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_act, exp: new abap.types.String().set(`{}`)});
}
}
abap.Classes['CLAS-ZCL_ABAPGIT_JSON_PATH-LTCL_JSON_PATH'] = ltcl_json_path;
export {ltcl_json_path}; |