Source: Models/createRegexDeserializer.js

'use strict';

/*global require*/
var defined = require('terriajs-cesium/Source/Core/defined');

/**
 * Deserializes a regex like ".foo" into a case-insensitive regex /.foo/i.
 *
 * @param  {String} fieldName The name of the field to serialize.
 * @return {Function} The deserialization function.
 */
function createRegexDeserializer(fieldName) {
    return function(catalogMember, json, propertyName, options) {
        if (defined(json[fieldName])) {
            catalogMember[fieldName] = new RegExp(json[fieldName], 'i');
        }
    };
}

module.exports = createRegexDeserializer;