MCPcopy Create free account
hub / github.com/unconed/TermKit / Sizzle

Function Sizzle

HTML/jquery.js:3725–3870  ·  view source on GitHub ↗
( selector, context, results, seed )

Source from the content-addressed store, hash-verified

3723});
3724
3725var Sizzle = function( selector, context, results, seed ) {
3726 results = results || [];
3727 context = context || document;
3728
3729 var origContext = context;
3730
3731 if ( context.nodeType !== 1 && context.nodeType !== 9 ) {
3732 return [];
3733 }
3734
3735 if ( !selector || typeof selector !== "string" ) {
3736 return results;
3737 }
3738
3739 var m, set, checkSet, extra, ret, cur, pop, i,
3740 prune = true,
3741 contextXML = Sizzle.isXML( context ),
3742 parts = [],
3743 soFar = selector;
3744
3745 // Reset the position of the chunker regexp (start from head)
3746 do {
3747 chunker.exec( "" );
3748 m = chunker.exec( soFar );
3749
3750 if ( m ) {
3751 soFar = m[3];
3752
3753 parts.push( m[1] );
3754
3755 if ( m[2] ) {
3756 extra = m[3];
3757 break;
3758 }
3759 }
3760 } while ( m );
3761
3762 if ( parts.length > 1 && origPOS.exec( selector ) ) {
3763
3764 if ( parts.length === 2 && Expr.relative[ parts[0] ] ) {
3765 set = posProcess( parts[0] + parts[1], context );
3766
3767 } else {
3768 set = Expr.relative[ parts[0] ] ?
3769 [ context ] :
3770 Sizzle( parts.shift(), context );
3771
3772 while ( parts.length ) {
3773 selector = parts.shift();
3774
3775 if ( Expr.relative[ selector ] ) {
3776 selector += parts.shift();
3777 }
3778
3779 set = posProcess( selector, set );
3780 }
3781 }
3782

Callers 2

jquery.jsFile · 0.70
posProcessFunction · 0.70

Calls 2

posProcessFunction · 0.70
makeArrayFunction · 0.70

Tested by

no test coverage detected