/**
 * Copyright (C) 2016-2020 Michael Kourlas
 *
 * Licensed 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.
 */ export function isUndefined ( val ) { return Object . prototype . toString . call ( val ) === "[object Undefined]" ; } export function isNull ( val ) { return Object . prototype . toString . call ( val ) === "[object Null]" ; } export function isObject ( val ) { return Object . prototype . toString . call ( val ) === "[object Object]" ; } export function isArray ( val ) { return Object . prototype . toString . call ( val ) === "[object Array]" ; } export function isFunction ( val ) { return Object . prototype . toString . call ( val ) === "[object Function]" ; } export function isSet ( val ) { return Object . prototype . toString . call ( val ) === "[object Set]" ; } export function isMap ( val ) { return Object . prototype . toString . call ( val ) === "[object Map]" ; } param value returns export function stringify ( value ) { if ( ! isUndefined ( value ) && ! isNull ( value ) ) { if ( isFunction ( value ?. toString ) ) { value = value . toString ( ) ; } } return String ( value ) ; }