function parseKeys () {
                var m = propExpression.match(ARRAY_FILTER_REGEX);
                if (m) {
                    targetKey = m[1].split('.').splice(1).join('.');
                    targetProps = m[2].split('.');
                    isPrimitive = false;
                    useIndex = (targetKey === '');
                } else {
                    targetKey = propExpression;
                }
            }
/**
             * Parses the property expression to determine the following:
             * @private
             * @memberof Services.Walker
             *
             * - if an array must be traversed
             * - if the expression is searching a primitive value
             * - if an array is being traversed, then should we pull from the array index (e.g. obj[0])
             *   or pull from an object within an array (e.g. obj.name)
             *
             * @example
             *
             * Given the following property expression
             *
             * 'd in dogs'
             *
             * This will be processed by the ARRAY_FILTER_REGEX. Since this contains `in`, an array is being traversed.
             * This will be split into a targetKey and targetProps. The targetKey in this case will be `d` and the targetProps
             * will contain an array split on the "." character to yield ['dogs']. Since only `d` was specified, we're only
             * targeting the index of the array.
             *
             * targetKey => 'd'
             * targetProps => ['dogs']
             *
             * However, given this expression
             *
             * 'd.name in pets.dogs'
             *
             * This would result in the following when constructed
             *
             * targetKey => 'name'
             * targetProps => ['pets', 'dogs']
             *
             */
Parses the property expression to determine the following:
@private
@memberof Services.Walker

- if an array must be traversed
- if the expression is searching a primitive value
- if an array is being traversed, then should we pull from the array index
or pull from an object within an array

@example

Given the following property expression

'd in dogs'

This will be processed by the ARRAY_FILTER_REGEX. Since this contains `in`, an array is being traversed.
This will be split into a targetKey and targetProps. The targetKey in this case will be `d` and the targetProps
will contain an array split on the "." character to yield ['dogs']. Since only `d` was specified, we're only
targeting the index of the array.

targetKey => 'd'
targetProps => ['dogs']

However, given this expression



This would result in the following when constructed


Parses the property expression to determine the following : @private @memberof Services . Walker - if an array must be traversed - if the expression is searching a primitive value - if an array is being traversed then should we pull from the array index or pull from an object within an array @example Given the following property expression ' d in dogs ' This will be processed by the ARRAY_FILTER_REGEX . Since this contains ` in ` an array is being traversed . This will be split into a targetKey and targetProps . The targetKey in this case will be ` d ` and the targetProps will contain an array split on the " . " character to yield [ ' dogs ' ] . Since only ` d ` was specified we ' re only targeting the index of the array . targetKey = > ' d ' targetProps = > [ ' dogs ' ] However given this expression This would result in the following when constructed
function parseKeys () {
                var m = propExpression.match(ARRAY_FILTER_REGEX);
                if (m) {
                    targetKey = m[1].split('.').splice(1).join('.');
                    targetProps = m[2].split('.');
                    isPrimitive = false;
                    useIndex = (targetKey === '');
                } else {
                    targetKey = propExpression;
                }
            }
function parseKeys ( ) { var m = propExpression . match ( ARRAY_FILTER_REGEX ) ; if ( m ) { targetKey = m [ 1 ] . split ( '.' ) . splice ( 1 ) . join ( '.' ) ; targetProps = m [ 2 ] . split ( '.' ) ; isPrimitive = false ; useIndex = ( targetKey === '' ) ; } else { targetKey = propExpression ; } }
Parses the property expression to determine the following:
 @private
 @memberof Services.Walker
Parses the property expression to determine the following : @private @memberof Services . Walker