UNPKG

interpret-util

Version:

interpret java-jar file to typescript files

58 lines (57 loc) 2.13 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; } Object.defineProperty(exports, "__esModule", { value: true }); /* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ const debug_1 = __importDefault(require("debug")); const log = debug_1.default("j2t:core:paramEnhance"); function argumentMap() { let _arguments = Array.from(arguments); return _arguments.map(argumentItem => argumentItem.__fields2java ? paramEnhance(argumentItem.__fields2java()) : argumentItem); } exports.argumentMap = argumentMap; //删除对象中包含undefined 与null的值情况 function paramEnhance(javaParams) { if (javaParams instanceof Array) { for (let i = 0, ilen = javaParams.length; i < ilen; i++) { let itemParam = javaParams[i]; minusRedundancy(itemParam); } } else { minusRedundancy(javaParams); } return javaParams; } function minusRedundancy(itemParam) { if (!itemParam) { return; } for (var _key in itemParam.$) { if (itemParam.$[_key] === null || itemParam.$[_key] === undefined) { delete itemParam.$[_key]; log("删除 key %s from %j ", itemParam, _key); } // else { // paramEnhance(itemParam.$[_key]) // } } }