Sha256: 9d394564351a1ac634c3f9770da91acc7e961905d5adbde40692886944bd8d04

Contents?: true

Size: 850 Bytes

Versions: 57

Compression:

Stored size: 850 Bytes

Contents

var memoizeCapped = require('./_memoizeCapped');

/** Used to match property names within property paths. */
var reLeadingDot = /^\./,
    rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;

/** Used to match backslashes in property paths. */
var reEscapeChar = /\\(\\)?/g;

/**
 * Converts `string` to a property path array.
 *
 * @private
 * @param {string} string The string to convert.
 * @returns {Array} Returns the property path array.
 */
var stringToPath = memoizeCapped(function(string) {
  var result = [];
  if (reLeadingDot.test(string)) {
    result.push('');
  }
  string.replace(rePropName, function(match, number, quote, string) {
    result.push(quote ? string.replace(reEscapeChar, '$1') : (number || match));
  });
  return result;
});

module.exports = stringToPath;

Version data entries

57 entries across 57 versions & 5 rubygems

Version Path
sumomo-0.10.8 data/sumomo/api_modules/node_modules/lodash/_stringToPath.js
sumomo-0.10.4 data/sumomo/api_modules/node_modules/lodash/_stringToPath.js
sumomo-0.10.3 data/sumomo/api_modules/node_modules/lodash/_stringToPath.js
sumomo-0.10.2 data/sumomo/api_modules/node_modules/lodash/_stringToPath.js
sumomo-0.10.1 data/sumomo/api_modules/node_modules/lodash/_stringToPath.js
sumomo-0.10.0 data/sumomo/api_modules/node_modules/lodash/_stringToPath.js
sumomo-0.9.0 data/sumomo/api_modules/node_modules/lodash/_stringToPath.js
sumomo-0.8.22 data/sumomo/api_modules/node_modules/lodash/_stringToPath.js
sumomo-0.8.21 data/sumomo/api_modules/node_modules/lodash/_stringToPath.js
sumomo-0.8.20 data/sumomo/api_modules/node_modules/lodash/_stringToPath.js
sumomo-0.8.17 data/sumomo/api_modules/node_modules/lodash/_stringToPath.js
sumomo-0.8.16 data/sumomo/api_modules/node_modules/lodash/_stringToPath.js
sumomo-0.8.15 data/sumomo/api_modules/node_modules/lodash/_stringToPath.js
sumomo-0.8.14 data/sumomo/api_modules/node_modules/lodash/_stringToPath.js
sumomo-0.8.13 data/sumomo/api_modules/node_modules/lodash/_stringToPath.js
sumomo-0.8.12 data/sumomo/api_modules/node_modules/lodash/_stringToPath.js
sumomo-0.8.11 data/sumomo/api_modules/node_modules/lodash/_stringToPath.js
sumomo-0.8.10 data/sumomo/api_modules/node_modules/lodash/_stringToPath.js
sumomo-0.8.9 data/sumomo/api_modules/node_modules/lodash/_stringToPath.js
sumomo-0.8.8 data/sumomo/api_modules/node_modules/lodash/_stringToPath.js