function change(obj, action, settings) {
    /*jshint laxbreak:true*/
    settings = settings
                ? copy(settings, {})
                : {};
    settings.transform = action;
    return copy(obj, obj, settings);
}
/**
 * Change all or filtered fields of object/map/array, applying specified action/transformation.
 * 
 * @param {Object} obj
 *      Object/map/array whose fields should be changed.
 * @param {Function | String} action
 *      An action/operation that should be applied to get new field value.
 *      See description of `transform` setting of {@link module:adam.copy copy}.
 * @param {Object} [settings]
 *     Operation settings. Keys are settings names, values are corresponding settings values.
 *     The following settings are supported:
 *     
 *   * `filter` - a filter that should be used to select fields for modification (see {@link module:adam.checkField checkField});
 *      fields conforming to the filter will be changed
 *   * `filterConnect`: `String` - a boolean connector that should be used when array of filters is specified
 *      in `filter` setting (see {@link module:adam.checkField checkField})
 * @return {Object}
 *      Modified object (value of `obj` parameter).
 * @alias module:adam.change
 * @see {@link module:adam.checkField checkField}
 * @see {@link module:adam.copy copy}
 */
Change all or filtered fields of object/map/array, applying specified action/transformation.

@param {Object} obj
Object/map/array whose fields should be changed.
@param {Function | String} action
An action/operation that should be applied to get new field value.
See description of `transform` setting of  module:adam.copy copy.
@param {Object} [settings]
Operation settings. Keys are settings names, values are corresponding settings values.
The following settings are supported.


Change all or filtered fields of object / map / array applying specified action / transformation . @param { Object } obj Object / map / array whose fields should be changed . @param { Function | String } action An action / operation that should be applied to get new field value . See description of ` transform ` setting of module : adam . copy copy . @param { Object } [ settings ] Operation settings . Keys are settings names values are corresponding settings values . The following settings are supported .
function change(obj, action, settings) {
    settings = settings
                ? copy(settings, {})
                : {};
    settings.transform = action;
    return copy(obj, obj, settings);
}
function change ( obj , action , settings ) { settings = settings ? copy ( settings , { } ) : { } ; settings . transform = action ; return copy ( obj , obj , settings ) ; }
Change all or filtered fields of object/map/array, applying specified action/transformation.
Change all or filtered fields of object / map / array applying specified action / transformation .
/*jshint laxbreak:true*/