src/ld-query.js
function select( state, json, path, isSeekAll ) {

        var steps = getSteps( state, path );
        if ( !steps.length ) { return { json: null }; }

        var paths = getCachedPaths( state, json );
        var walker = !!paths ? cachedWalk : walk;
        var found = walker( paths || json,
                            isSeekAll ? [] : null,
                            selectStep( steps, isSeekAll ) );

        var lastStep = steps[ 0 ].path;
        return {

            json: found,
            isFinal: ( isSeekAll ? found.length === 0 : found === null ) ||
                !!~[ "@id", "@index", "@value", "@type" ].indexOf( lastStep )

        };

    }
function select( state, json, path, isSeekAll ) {

        var steps = getSteps( state, path );
        if ( !steps.length ) { return { json: null }; }

        var paths = getCachedPaths( state, json );
        var walker = !!paths ? cachedWalk : walk;
        var found = walker( paths || json,
                            isSeekAll ? [] : null,
                            selectStep( steps, isSeekAll ) );

        var lastStep = steps[ 0 ].path;
        return {

            json: found,
            isFinal: ( isSeekAll ? found.length === 0 : found === null ) ||
                !!~[ "@id", "@index", "@value", "@type" ].indexOf( lastStep )

        };

    }
function select ( state , json , path , isSeekAll ) { var steps = getSteps ( state , path ) ; if ( ! steps . length ) { return { json : null } ; } var paths = getCachedPaths ( state , json ) ; var walker = ! ! paths ? cachedWalk : walk ; var found = walker ( paths || json , isSeekAll ? [ ] : null , selectStep ( steps , isSeekAll ) ) ; var lastStep = steps [ 0 ] . path ; return { json : found , isFinal : ( isSeekAll ? found . length === 0 : found === null ) || ! ! ~ [ "@id" , "@index" , "@value" , "@type" ] . indexOf ( lastStep ) } ; }
select json for this path
select json for this path