[KSS-checkins] r42416 - in kukit/kukit.js/branch/performance_improvement: 3rd_party kukit

jvloothuis at codespeak.net jvloothuis at codespeak.net
Sun Apr 29 11:01:26 CEST 2007


Author: jvloothuis
Date: Sun Apr 29 11:01:25 2007
New Revision: 42416

Added:
   kukit/kukit.js/branch/performance_improvement/3rd_party/base2-dom-fp.js
Modified:
   kukit/kukit.js/branch/performance_improvement/kukit/dom.js
Log:
Changed querying for css selectors to base2 instead of cssQuery. Base2 is supposed to be a lot faster than the old cssQuery.


Added: kukit/kukit.js/branch/performance_improvement/3rd_party/base2-dom-fp.js
==============================================================================
--- (empty file)
+++ kukit/kukit.js/branch/performance_improvement/3rd_party/base2-dom-fp.js	Sun Apr 29 11:01:25 2007
@@ -0,0 +1 @@
+eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('q Y={};B l(){q G=l(){};G.I={v:l(c){u(y.A>1){q d=m[c];q e=y[1];u(E e=="l"&&d&&/\\6B\\b/.10(e)){q f=e;e=l(){q a=m.x;m.x=d;q b=f.N(m,y);m.x=a;t b};e.4c=f;e.2q=d}m[c]=e}H u(c){q g=G.I.v;u(G.2H){q h,i=0,57=["T","1s","50"];1c(h=57[i++])u(c[h]!=1N.I[h]){g.X(m,h,c[h])}}H u(E m!="l"){g=m.v||g}13(h 2u c)u(!1N.I[h]){g.X(m,h,c[h])}}t m},x:G};G.v=l(b,c){q d=G.I.v;G.2H=14;q e=B m;d.X(e,b);26 G.2H;q T=e.T;q f=e.T=l(){u(!G.2H){u(m.3B||m.T==f){m.3B=14;T.N(m,y);26 m.3B}H{q a=y[0];u(a!=F){(a.v||d).X(a,e)}t a}}};13(q i 2u G)f[i]=m[i];f.2q=m;f.x=G.x;f.I=e;f.1s=m.1s;d.X(f,c);u(E f.P=="l")f.P();t f};G=G.v({T:l(){m.v(y[0])}},{2q:1N,x:G,18:l(a){u(E a=="l"){a(m.I)}H{m.I.v(a)}t m}});q $31=36.$31||{};q K=l(a){t a};q 1P=l(a,b,c){u(!a){1K B(c||36.3q)(b||"5q 5m.");}};q 3m=l(a,b,c){u(b){q d=E b=="l"?1g(a,b):E a==b;1P(d,c||"48 2G.",47)}};q D=l(c){q d=y;t W(c).M(/%([1-9])/g,l(a,b){t b<d.A?d[b]:a})};q $1g=$31.1g||B 1v("o,k","t o 6I k");q 1g=l(a,b){3m(b,"l","48 \'1g\' 6G.");u($1g(a,b))t 14;u(a!=F)28(b){V 1N:t 14;V 51:V 34:V 1v:V W:t E a==E b.I.50();V 1r:t a.32&&a.2y&&!y.3I(a,1v);V 4S:t!!a.6i;V 15:t W(a.T.I)==W(B 15)}t J};q 2v=l(a,b){t W(a).2v(b)||[]};q 4H=/([\\/()[\\]{}|*+-.,^$?\\\\])/g;q 2t=l(a){t W(a).M(4H,"\\\\$1")};q $S=1r.I.S;q S=l(a){t $S.N(a,$S.X(y,1))};q 4D=/^\\s+|\\s+$/g;q 3z=l(a){t W(a).M(4D,"")};q x=l(a,b){t a.x.N(a,b)};q v=l(a){1P(a!=1N.I,"1N.I 4w 5N!");t G.I.v.N(a,S(y,1))};q $2x=1;q 1m=l(a){u(!a.1L)a.1L="5I"+$2x++;t a.1L};u(E 24=="1J"){24=B 3q("24")}q C=l(a,b,c){u(a==F)t;u(E a=="l"){q d=1v}H u(E a.C=="l"&&a.C!=y.3I){a.C(b,c);t}H u(E a.A=="3K"){C.1r(a,b,c);t}C.1v(d||1N,a,b,c)};C.1r=l(a,b,c){q i,A=a.A;u(E a=="17"){13(i=0;i<A;i++){b.X(c,a.37(i),i,a)}}H{13(i=0;i<A;i++){b.X(c,a[i],i,a)}}};C.1v=l(a,b,c,d){13(q e 2u b){u(a.I[e]===1J){c.X(d,b[e],e,b)}}};G.C=l(a,b,c){C.1v(m,a,b,c)};u("".M(/^/,W)){v(W.I,"M",l(a,b){u(E b=="l"){u(1g(a,15)){q c=a;q d=c.2P;u(d==F)d=/(g|4e)$/.10(c);u(d)c=B 15(c.2O)}H{c=B 15(2t(a))}q e,17=m,3W="";1c(17&&(e=c.1h(17))){3W+=17.S(0,e.O)+b.N(m,e);17=17.S(e.O+e[0].A);u(!d)4b}t 3W+17}H{t x(m,y)}})}q 3o=G.v({T:l(){1K B 47("5p 5n 5l 5k.");}});q 1l=3o.v(F,{v:l(c,d){q e=m.x();C(m,l(a,b){u(!1l[b]&&b!="P"){v(e,b,a)}});e.18(c);v(e,d);u(E e.P=="l")e.P();t e},18:l(d){q e=m;u(E d=="l"){e.x(d);C(d,l(a,b){u(!1l[b]&&b!="P"){v(e,b,a)}})}H{G.C(v({},d),l(b,c){u(E b=="l"){b=l(){q a;t e[c].N(e,[m].3l(S(y)))}}u(!1l[c])v(m,c,b)},e.I);v(e,d)}t e}});q 1n=1l.v({49:l(c,d,e){q f=14;2C{m.C(c,l(a,b){f=d.X(e,a,b,c);u(!f)1K 24;})}2k(1B){u(1B!=24)1K 1B;}t!!f},5j:l(d,e,f){t m.2p(d,B 1C,l(a,b,c){u(e.X(f,b,c,d)){a[a.A]=b}t a})},5h:l(b,c){q d=S(y,2);t m.2L(b,(E c=="l")?l(a){u(a!=F)t c.N(a,d)}:l(a){u(a!=F)t a[c].N(a,d)})},2L:l(c,d,e){q f=B 1C;m.C(c,l(a,b){f[f.A]=d.X(e,a,b,c)});t f},5g:l(b,c){t m.2L(b,l(a){u(a!=F)t a[c]})},2p:l(c,d,e,f){m.C(c,l(a,b){d=e.X(f,d,a,b,c)});t d},6O:l(c,d,e){t!m.49(c,l(a,b){t!d.X(e,a,b,c)})}},{C:C});q 1i=1l.v({5f:l(d,e){u(!e)e=d;t m.2p(d,{},l(a,b,c){a[b]=e[c];t a})},3e:l(a){t m.3l(a)},1p:l(a,b){t m.1S(a,b)!=-1},C:C.1r,1S:l(a,b,c){q d=a.A;u(c==F){c=0}H u(c<0){c=5d.5b(0,d+c)}13(q i=c;i<d;i++){u(a[i]===b)t i}t-1},3X:l(a,b,c){m.2y(a,c,0,b);t b},6J:l(a,b,c){q d=m.1S(a,c);u(d==-1)m.23(a,b);H m.2y(a,d,0,b);t b},6H:l(a,b,c){q d=a.A;u(c==F){c=d-1}H u(6F<0){c=5d.5b(0,d+c)}13(q i=c;i>=0;i--){u(a[i]===b)t i}t-1},2B:l(a,b){q c=m.1S(a,b);u(c!=-1)m.3S(a,c);t b},3S:l(a,b){q c=a[b];m.2y(a,b,1);t c}});1i.I.C=l(a,b){C.1r(m,a,b)};1i.18(1n);C("3l,32,6D,23,3Q,6y,S,38,2y,6t".1x(","),l(b){1i[b]=l(a){t 1r.I[b].N(a,S(y,1))}});q 1C=l(){t 1i(m.T==1i?1r.N(F,y):y[0])};1C.I=1i.I;C(1i,l(a,b,c){u(1r[b]){1i[b]=1r[b];26 1i.I[b]}1C[b]=1i[b]});q 1I="#"+51(B 4S);q Z=1I+"3L";q 1R=1I+"4V";q 35=G.v({T:l(a){m[Z]=B 1C;m[1R]={};m.3N(a)},3e:l(){t B m.T(m)},2b:$31.2b||B 1v("k",D("t(\'%1\'+k)2u m[\'%2\']",1I,1R)),1Q:l(a){t m[1R][1I+a]},C:l(b,c){C(m[Z],l(a){b.X(c,m.1Q(a),a,m)},m)},3L:l(a,b){28(y.A){V 0:t m[Z].3e();V 1:t m[Z][a];2Z:t m[Z].S(a,b)}},3N:l(d){C(y,l(c){C(c,l(a,b){m.2d(b,a)},m)},m);t m},2B:l(a){q b=m.1Q(a);m[Z].2B(W(a));26 m[1R][1I+a];t b},2d:l(a,b){u(y.A==1)b=a;u(!m.2b(a)){m[Z].23(W(a))}m[1R][1I+a]=b;t b},1s:l(){t W(m[Z])},6h:l(a){t m.3N.N(m.3e(),y)},4V:l(a,b){q c=m.2L(K);28(y.A){V 0:t c;V 1:t c[a];2Z:t c.S(a,b)}}});35.18(1n);q 3G=35.v({2X:l(a,b){1P(!m.2b(a),"4O 4N.");t m.2d.N(m,y)},4K:l(){t m[Z].A},1S:l(a){t m[Z].1S(W(a))},3X:l(a,b,c){1P(!m.2b(b),"4O 4N.");m[Z].3X(a,W(b));t m.2d.N(m,S(y,1))},1U:l(a){t m.1Q(m[Z][a])},3S:l(a){t m.2B(m[Z][a])},3Q:l(){m[Z].3Q();t m},38:l(c){u(c){q d=m;m[Z].38(l(a,b){t c(d.1Q(a),d.1Q(b),a,b)})}H m[Z].38();t m},2d:l(a,b){u(y.A==1)b=a;b=m.T.2M.N(m.T,y);t m.x(a,b)},68:l(a,b){1P(a<m.4K(),"64 61 5Z 5X.");y[0]=m[Z][a];t m.2d.N(m,y)}},{1e:F,2M:l(a,b){u(m.1e&&!1g(b,m.1e)){b=B m.1e(a,b)}t b},v:l(a,b){q c=m.x(a);c.2M=m.2M;v(c,b);u(!c.1e){c.1e=m.1e}H u(E c.1e!="l"){c.1e=(m.1e||G).v(c.1e)}u(E c.P=="l")c.P();t c}});q 21=3G.v({T:l(a,b){m.x(a);u(E b=="17"){m.2P=/g/.10(b);m.2Q=/i/.10(b)}},2P:14,2Q:J,1h:l(d,e){u(y.A==1){q f=m[Z];q g=m[1R];e=l(a){u(!a)t"";q b=1,i=0;1c(a=g[1I+f[i++]]){u(y[b]){q c=a.3D;28(E c){V"l":t c.N(F,S(y,b));V"3K":t y[b+c];2Z:t c}}H b+=a.A+1}}}q h=(m.2P?"g":"")+(m.2Q?"i":"");t W(d).M(B 15(m,h),e)},10:l(a){t m.1h(a)!=a},1s:l(){t"("+m.3L().32(")|(")+")"}},{4z:"$0",P:l(){C("2X,2b,1Q,2B".1x(","),l(b){v(m,b,l(a){u(1g(a,15)){a=a.2O}t x(m,y)})},m.I)}});21.1e=G.v({T:l(a,b){q c=/\\\\./g,4y=/([\'"])\\1\\+(.*)\\+\\1\\1$/;a=1g(a,15)?a.2O:W(a);u(/\\\\(\\d+)/.10(a))1K B 3q("5Q 5O 2S 5M (5L).");u(E b=="3K")b=W(b);H u(b==F)b="";m.A=2v(a.M(/\\\\\\(/g,""),/\\(/g).A;u(E b=="17"&&/\\$(\\d+)/.10(b)){u(/^\\$\\d+$/.10(b)){b=3A(b.S(1))}H{q i=m.A+1;q Q=/\'/.10(b.M(c,""))?\'"\':"\'";b=b.M(/\\n/g,"\\\\n").M(/\\r/g,"\\\\r").M(/\\$(\\d+)/g,Q+"+y[$1]+"+Q);b=B 1v("t "+Q+b.M(4y,"$1")+Q)}}m.3D=b;m.1s=l(){t a||""}},A:0,3D:""});q 1X=G.v({T:l(c,d){m.x(d);m.1s=l(){t D("[Y.%1]",m.1j)};u(E m.P=="l")m.P();u(m.1j!="Y"){m.2a=D("q %1=Y.%1;",m.1j)}q e="q x="+x+";";q f=("Y,2U,"+m.27).1x(",");c.27=1n.2p(f,e,l(a,b){u(Y[b])a+=Y[b].2a;t a});q e=D("Y.%1=%1;",m.1j);q g=m.1d.1x(",");c.1d=1n.2p(g,e,l(a,b){u(b){m.2a+=D("q %2=%1.%2;",m.1j,b);a+=D("u(!%1.%2)%1.%2=%2;Y.%2=%1.%2;",m.1j,b)}t a},m)},1d:"",27:"",2a:"",1j:""});Y=B 1X(m,{1d:"G,3o,1l,1n,1C,35,3G,21,1X",1j:"Y",2w:"0.7 (4n)"});Y.1s=l(){t"[Y]"};1A(m.1d);q 2U=B 1X(m,{1j:"2U",2w:Y.2w,1d:"K,1P,3m,1m,1g,v,D,C,2v,2t,S,3z",P:l(){m.v=v;C(1n.I,l(a,b){u(!1l[b]){m[b]=l(){t 1n[b].N(1n,y)};m.1d+=","+b}},m)}});1A(m.1d);Y.2a+=2U.2a};B l(){q U=/*@5B!@*/J;q 1b=11.4i("5A");q 19={1t:"",P:l(){q 1t=4f.1t;u(!U)1t=1t.M(/U\\s[\\d.]+/,"");1t=1t.M(/([a-z])[\\s\\/](\\d)/4e,"$1$2");m.1t=4f.4d+" "+1t},22:l(a){q r=J;q b=a.37(0)=="!";a=a.M(/^\\!?(u\\s*|4d\\s+)?/,"").M(/^(["\']?)([^\\(].*)(\\1)$/,"/$2/i.10(19.1t)");2C{1A("r=!!"+a)}2k(1B){}t 34(b^r)}};Y.v(19,{1d:"22,3U",1j:"19",2w:"0.9"});19=B Y.1X(m,19);1A(m.27);q 41=G.I.v;G.I.v=l(a,b){u(E a=="17"&&a.37(0)=="@"){t 19.22(a.S(1))?41.X(m,b):m}t 41.N(m,y)};u(U&&36.2N){q $1E={};19.$L=l(b,c){u(!c||c.1W!=1){t b}q d=c.5s;q e=1m(b);$1E[e]=b;u(!$1E[d])$1E[d]={};q f=$1E[d][e];u(f)t f;c=F;b=F;q g=l(){q a=11.1w[d];u(a)t $1E[e].N(a,y)};g.3p=e;$1E[d][e]=g;t g};2N("5r",l(){$1E=F})}q 3U=1l.v(F,{3n:l(a){t(a&&a.5o)?a:F},"@U":{3n:l(a){t(a==4a)?4a:m.x()}}});1A(m.1d)};B l(){q 2m=B Y.1X(m,{1j:"2m",2w:"0.9 (4n)",27:"19",1d:"2l,1u,1D,R,2K,1V,1y,2J,1a,3k,3j,2I,3i,3h,2z"});1A(m.27);q 2f=1l.v(F,{2j:l(b){m[b]=l(a){t(a[b].2q||a[b]).N(a,S(y,1))}},v:l(c,d){q e=m.x();C(c,l(a,b){u(E a=="l"&&!e[b]){e.2j(b)}H u(b.37(0)=="@"){C(a,y.3I)}});e.18(c);v(e,d);u(E e.P=="l")e.P();t e},"@!(1b.1k.N)":{2j:l(d){m[d]=l(a){q b=(a.x&&a.x==a[d].2q)?"x":d;28(y.A){V 1:t a[b]();V 2:t a[b](y[1]);V 3:t a[b](y[1],y[2]);V 4:t a[b](y[1],y[2],y[3])}q c=[],i=y.A;1c(i-->1)c[i-1]="y["+i+"]";1A("q 2i=5i[4c]("+c+")");t 2i}}}});q 2h=2f.v(F,{v:l(a,b){q c=m.L;u(b){c=b.L||c;26 b.L}q d=m.x(a,b);v(d,"L",c);t d}});2h.L=l(a){t m(a)};q R=1l.v({2F:l(a){t m.1T(a).2E},2D:l(a){1c(a&&(a=a.46)&&!m.20(a))3g;t a},45:l(a){q b=0;1c(a&&(a=a.44))b++;t b},2g:l(a){t a.3f},43:l(a){1c(a&&(a=a.44)&&!m.20(a))3g;t a},42:l(a){t a.6N},5e:l(a){a=a.6M;1c(a){u(a.1W==3||m.20(a))t J;a=a.46}t 14},"@U":{42:l(a){t a.6L},2F:l(a){t m.1T(a).6K},"@1H":{2g:l(a){t a.3f||a.11}}}},{1p:l(a,b){t m.40(a)?a==m.2g(b):a!=b&&a.1p(b)},1T:l(a){t m.40(a)?a:m.2g(a)},40:l(a){t 34(a&&a.3Z)},20:l(a){t 34(a&&a.5c)},"@!(1b.1p)":{1p:l(a,b){1c(b&&(b=b.3d)&&a!=b)3g;t!!b}},"@1H":{20:l(a){t m.x(a)&&a.3c!="!"}}});q 2l=2h.v({"@!(1b.59)":{59:l(a,b){u(R.1p(a,b)){t 4|16}H u(R.1p(b,a)){t 2|8}q c=m.$3b(a);q d=m.$3b(b);u(c<d){t 4}H u(c>d){t 2}t 0}}},{$3b:l(a){q b=0;1c(a){b=R.45(a)+"."+b;a=a.3d}t b},"@(1b.1M)":{$3b:l(a){t a.1M}}});q 1u=2l.v(F,{L:l(a){m.x(a);2K.L(a.2E);t a}});1u.2j("4i");q 1D=2l.v({"@U[67]":{3a:l(a,b){u(a.1q===1J||b=="56"||b=="3T"){t m.x(a,b,2)}q c=a.6E(b);t c&&c.55?c.54:F}},"@1H.+2A":{3a:l(a,b){u(a.1q===1J||b=="56"||b=="3T"){t m.x(a,b,2)}q c=a.5c[m.$25[b.53()]||b];t c?c.55?c.54:F:m.x(a,b)}}},{$25:"",P:l(){q a=m.$25.53().1x(",");q b=m.$25.1x(",");m.$25=1C.5f(a,b)},"@1H.+2A":{$25:"6C,6A,6z,6x,6w,6v,6u,6s,6r,6q"}});1D.2j("4Z");v(2m,{L:l(a){28(a.1W){V 1:t 1D.L(a);V 9:t 1u.L(a);2Z:t 2l.L(a)}t a}});q 3O={};q 1O=l(a){u(a){q b=1m(a);u(!3O[b]){2m.L(a);3O[b]=14}}t a};q 2K=2h.v();q 1V=2h.v({"@!(11.2c)":{3M:l(a,b,c,d){a.2G=b;a.4Y=c;a.3H=d},"@U":{3M:l(a){x(m,y);a.4X=!a.4Y},4W:l(a){u(a.3H!==J){a.2i=J}},6p:l(a){a.4X=14}}}},{"@U.+6o":{L:l(a){t m.x(v({4W:l(){u(m.3H!==J){m.2i=J}}},a))}},"@U.+2A":{L:l(a){m.x(a);a.3J=a.6n;t a}}});q 1y=2f.v({"@!(1b.1k)":{1k:l(a,b,c){q d=1m(a);q e=c.3p||1m(c);q f=m.$1w[d];u(!f)f=m.$1w[d]={};q g=f[b];q h=a["4T"+b];u(!g){g=f[b]={};u(h)g[0]=h}g[e]=c;u(h!==1J){a["4T"+b]=m.$33}},30:l(a,b){m.$33.X(a,b)},6m:l(a,b,c){q d=m.$1w[a.1L];u(d&&d[b]){26 d[b][c.1L]}},"@U.+2A":{1k:l(a,b,c){m.x(a,b,m.1O(c,a))},30:l(a,b){b.3J=a;2C{a.6l(b.2G,b)}2k(1B){m.x(a,b)}}}}},{1O:l(a,b){q c=l(){t a.N(b,y)};c.3p=1m(a);t c},"@!(1b.1k)":{$1w:{},$33:l(a){q b=14;q c=1y.$1w[m.1L];u(c){a=1V.L(a);q d=c[a.2G];13(q i 2u d){b=d[i].X(m,a);u(a.2i===J)b=J;u(b===J)4b}}t b},"@U":{$33:l(a){u(!a){q b=3U.3n(m)||R.2F(m);a=b.6k}t m.x(a)},"6j":{1O:l(a,b){t 19.$L(a,b)}}}}});v(1y,{1k:l(a,b,c,d){u(d)c=m.1O(c,d);m.x(a,b,c,J)},30:l(a,b){u(E b=="17"){q c=b;q d=R.1T(a);b=2J.2c(d,"4R");1V.3M(b,c,J,J)}m.x(a,b)}});q 2J=2f.v({"@!(11.2c)":{2c:l(a){t 1V.L({})},"@(11.4Q)":{2c:l(a){t 1V.L(a.4Q())}}},"@5a":{2c:l(a,b){t m.x(a,b=="4R"?"6g":b)}}});q 1f=B G({2Y:J,29:l(){u(!1f.2Y){1f.2Y=14;6f("Y.1y.30(11,\'1f\')",0)}},P:l(){1y.1k(11,"1f",l(){1f.2Y=14});1y.1k(36,"4P",1f.29)},"@(1k)":{P:l(){m.x();1k("4P",1f.29,J)}},"@(2N)":{P:l(){m.x();2N("6e",1f.29)}},"@U.+2A":{P:l(){m.x();11.6d("<4M 2W=4L 6c 3T=//:><\\/4M>");11.1w.4L.6a=l(){u(m.4J=="4I"){m.69();1f.29()}}}},"@5a":{P:l(){m.x();q a=66(l(){u(/65|4I/.10(11.4J)){63(a);1f.29()}},62)}}});1f.P();q 3i=2f.v({"@!(4G)":{4G:l(a,b){t b.60}}},{5Y:l(c){t W(c).M(/\\-([a-z])/g,l(a,b){t b.3F()})}});v(1u,{"@!(11.2E)":{L:l(a){m.x(a);a.2E=R.2F(a);t a}}});q 2T=2f.v({"@!(1b.4E)":{4E:l(a,b){t m.3E(a,"."+b.32(",."))}},"@!(1b.3s)":{3E:l(a,b){t B 1a(b).1h(a)},3s:l(a,b){t B 1a(b).1h(a,1)}}});v(2T.I,{3E:l(b){t v(m.x(b),"1U",l(a){t 1O(m.x(a))})},3s:l(a){t 1O(m.x(a))}});q 3k=2T.v();q 3j=2T.v({"@!(1b.4C)":{4C:l(a,b){t B 1a(b).10(a)}}});q 2I=G.v({T:l(b){b=b||[];m.A=b.A;m.1U=l(a){t b[a]}},A:0,C:l(a,b){2C{q c=m.A;13(q i=0;i<c;i++){a.X(b,m.1U(i),i,m)}}2k(1B){u(1B!=24)1K 1B;}},1U:l(a){},"@(5W)":{T:l(b){u(b&&b.4B){m.A=b.5V;m.1U=l(a){t b.4B(a)}}H m.x(b)}}});2I.18(1n);q 1a=G.v({T:l(a){m.1s=l(){t 3z(a)}},1h:l(a,b){2C{q c=m.$4A(a||11,b)}2k(1B){1K B 5U(D("\'%1\' 4w 2S a 5T 5S 5R.",m));}t b?c:B 2I(c)},10:l(a){a.4Z("3x",14);q b=B 1a(m+"[3x]");q c=b.1h(R.2g(a),1);a.5P("3x");t c==a},$4A:l(a,b){t 1a.3w(m)(a,b)}});q 1G=21.v({T:l(){x(m,y);m.1F={};m.2R=B 21;m.2R.2X(/:2S\\([^)]*\\)/,21.4z);m.2R.2X(/([ >](\\*|[\\w-]+))([^: >+~]*)(:\\w+-2r(\\([^)]+\\))?)([^: >+~]*)/,"$1$3$6$4")},1F:F,2Q:14,3C:l(b){q c=m.4x=[];t m.4v(m.D(W(b).M(1G.4u,l(a){c.23(a.S(1,-1));t"%"+c.A})))},D:l(a){t a.M(1G.4t,"$1").M(1G.4F,"$1 $2").M(1G.4s,"$1*$2")},4v:l(a){t m.2R.1h(a.M(1G.4r,">* "))},3w:l(a){t m.1F[a]||(m.1F[a]=m.2V(m.1h(m.3C(a))))},2V:l(a){t D(a,m.4x)}},{4u:/(["\'])[^\\1]*\\1/g,4s:/([\\s>+~,]|[^(]\\+|^)([#.:@])/g,4F:/(^|,)([^\\s>+~])/g,4t:/\\s*([\\s>+~(),]|^|$)\\s*/g,4r:/\\s\\*\\s/g,4q:l(c,d,e,f,g,h,i,j){f=/3y/i.10(c)?f+"+1-":"";u(!5K(d))d="5J+"+d;H u(d=="5H")d="2n";H u(d=="5G")d="2n+1";d=d.1x(/n\\+?/);q a=(d[0]=="")?1:(d[0]=="-")?-1:3A(d[0]);q b=3A(d[1])||0;q g=a<0;u(g){a=-a;u(a==1)b++}q k=D(a==0?"%3%7"+(f+b):"(%4%3-%2)%6%1%6b%5%4%3>=%2",a,b,e,f,h,i,j);u(g)k=g+"("+k+")";t k}});1a.3v={"=":"%1==\'%2\'","~=":/(^| )%1( |$)/,"|=":/^%1(-|$)/,"^=":/^%1/,"$=":/%1$/,"*=":/%1/};1a.3v[""]="%1!=F";1a.4p={"4o":"e%1.4o","1p":"R.42(e%1).1S(\'%2\')!=-1","3u":"e%1.3u","5F":"R.5e(e%1)","5E":"e%1.3u===J","5D-2r":"!R.43(e%1)","3y-2r":"!R.2D(e%1)","5C-2r":"!R.43(e%1)&&!R.2D(e%1)","4m":"e%1==R.1T(e%1).3Z"};B l(){q U=19.22("U");q 1H=19.22("1H");q 2s=19.22("(1b.1M)");q 3t="q p%2=0,i%2,e%2,n%2=e%1.";q 2x=2s?"e%1.1M":"1m(e%1)";q 4l="q g="+2x+";u(!p[g]){p[g]=1;";q 4k="r[r.A]=e%1;u(s)t e%1;";q 4U="1Z=l(4j,s){1Y={};q r=[],p={},1o=[%1],"+"d=R.1T(4j),c=d.4h?\'3F\':\'1s\';";q 3P=U?l(a,b){q c=a.1w[b]||F;u(!c||c.2W==b)t c;13(q i=0;i<c.A;i++){u(c[i].2W==b)t c[i]}t F}:l(a,b){t a.3P(b)};q 1Y={};l 4g(a){q b=2s?a.1M:1m(a);u(!1Y[b]){q c=1Y[b]={};q d=U?a.52||a.3r:a.3r;q e=0;q f;13(q i=0;(f=d[i]);i++){u(R.20(f)){c[2s?f.1M:1m(f)]=++e}}c.A=e}t b};q 1Z;q O;q 1o;q 12;q 1z;q 2o;q 1F={};q 2e=B 1G({"^ \\\\*:4m":l(a){12=J;q b="e%2=d.3Z;u(R.1p(e%1,e%2)){";t D(b,O++,O)}," (\\\\*|[\\\\w-]+)#([\\\\w-]+)":l(a,b,c){12=J;q d="q e%2=3P(d,\'%4\');u(";u(b!="*")d+="e%2.39==\'%3\'[c]()&&";d+="R.1p(e%1,e%2)){";u(1z)d+=D("i%1=n%1.A;",1z);t D(d,O++,O,b,c)}," (\\\\*|[\\\\w-]+)":l(a,b){2o++;12=b=="*";q c=3t;c+=(12&&1H)?"1w":"5z(\'%3\')";c+=";13(i%2=0;(e%2=n%2[i%2]);i%2++){";t D(c,O++,1z=O,b)},">(\\\\*|[\\\\w-]+)":l(a,b){q c=U&&1z;12=b=="*";q d=3t;d+=c?"52":"3r";u(!12&&c)d+=".3R(\'%3\')";d+=";13(i%2=0;(e%2=n%2[i%2]);i%2++){";u(12){d+="u(e%2.1W==1){";12=1H}H{u(!c)d+="u(e%2.39==\'%3\'[c]()){"}t D(d,O++,1z=O,b)},"([+~])(\\\\*|[\\\\w-]+)":l(a,b,c){q d="";u(12&&U)d+="u(e%1.3c!=\'!\'){";12=J;q e=b=="+";u(!e){d+="1c(";2o=2}d+="e%1=R.2D(e%1)";d+=(e?";":"){")+"u(e%1";u(c!="*")d+="&&e%1.39==\'%2\'[c]()";d+="){";t D(d,O,c)},"#([\\\\w-]+)":l(a,b){12=J;q c="u(e%1.2W==\'%2\'){";u(1z)c+=D("i%1=n%1.A;",1z);t D(c,O,b)},"\\\\.([\\\\w-]+)":l(a,b){12=J;1o.23(B 15("(^|\\\\s)"+2t(b)+"(\\\\s|$)"));t D("u(1o[%2].10(e%1.1q)){",O,1o.A-1)},":2S\\\\((\\\\*|[\\\\w-]+)?([^)]*)\\\\)":l(a,b,c){q d=(b&&b!="*")?D("u(e%1.39==\'%2\'[c]()){",O,b):"";d+=2e.1h(c);t"u(!"+d.S(2,-1).M(/\\)\\{u\\(/g,"&&")+"){"},":5y(-3y)?-2r\\\\(([^)]+)\\\\)":l(a,b,c){12=J;b=D("1Y[p%1].A",O);q d="u(p%1!==e%1.3d.";d+=2s?"1M":"1L";d+=")p%1=4g(e%1.3d);q i=1Y[p%1]["+2x+"];u(";t D(d,O)+1G.4q(a,c,"i",b,"!","&&","%","==")+"){"},":([\\\\w-]+)(\\\\(([^)]+)\\\\))?":l(a,b,c,d){t"u("+D(1a.4p[b],O,d||"")+"){"},"\\\\[([\\\\w-]+)\\\\s*([^=]?=)?\\\\s*([^\\\\]]*)\\\\]":l(a,b,c,d){u(c){u(b=="5x")b=="1q";H u(b=="13")b=="5w";b=D("(e%1.3a(\'%2\')||e%1[\'%2\'])",O,b)}H{b=D("1D.3a(e%1,\'%2\')",O,b)}q e=1a.3v[c||""];u(1g(e,15)){1o.23(B 15(D(e.2O,2t(2e.2V(d)))));e="1o[%2].10(%1)";d=1o.A-1}t"u("+D(e,b,d)+"){"}});1a.3w=l(f){u(!1F[f]){1o=[];1Z="";q g=2e.3C(f).1x(",");C(g,l(a,b){O=1z=2o=0;q c=2e.1h(a);u(12&&U){c+=D("u(e%1.3c!=\'!\'){",O)}q d=(b||2o>1)?4l:"";c+=D(d+4k,O);q e=2v(c,/\\{/g).A;1c(e--)c+="}";1Z+=c});1A(D(4U,1o)+2e.2V(1Z)+"t r}");1F[f]=1Z}t 1F[f]}};2K.18(3i);1u.18(3k);1u.18(2J);1u.18(1y);1D.18(3j);1D.18(1y);q 3h=1u.v({"@!(11.1W)":{1W:9}},{"@(11.3V===1J)":{L:l(b){m.x(b);b.3V=F;b.1k("5v",l(a){b.3V=a.3J},J);t b}}});q 2z=1D.v({5u:l(a,b){u(!m.58(a,b)){a.1q+=(a.1q?" ":"")+b;t b}},58:l(a,b){q c=B 15("(^|\\\\s)"+b+"(\\\\s|$)");t c.10(a.1q)},5t:l(a,b){q c=B 15("(^|\\\\s)"+b+"(\\\\s|$)");a.1q=a.1q.M(c,"$2");t b}},{3Y:{},3R:"*",v:l(){q b=x(m,y);q c=(b.3R||"").3F().1x(",");C(c,l(a){2z.3Y[a]=b});t b},"@!(1b.3f)":{L:l(a){m.x(a);a.3f=R.2g(a);t a}}});v(2m,"L",l(a){u(E a.1q=="17"){(2z.3Y[a.3c]||2z).L(a)}H u(a.4h!==1J){3h.L(a)}H{m.x(a)}t a});1A(m.1d)};',62,423,'|||||||||||||||||||||function|this||||var|||return|if|extend||base|arguments||length|new|forEach|format|typeof|null|Base|else|prototype|false||bind|replace|apply|index|init||Traversal|slice|constructor|MSIE|case|String|call|base2|KEYS|test|document|wild|for|true|RegExp||string|implement|BOM|Selector|element|while|exports|Item|DOMContentLoaded|instanceOf|exec|IArray|name|addEventListener|Module|assignID|Enumerable|reg|contains|className|Array|toString|userAgent|Document|Function|all|split|EventTarget|list|eval|error|Array2|Element|closures|cache|Parser|MSIE5|HASH|undefined|throw|base2ID|sourceIndex|Object|_bind|assert|fetch|VALUES|indexOf|getDocument|item|Event|nodeType|Namespace|indexed|fn|isElement|RegGrp|detect|push|StopIteration|htmlAttributes|delete|imports|switch|fire|namespace|exists|createEvent|store|parser|Interface|getOwnerDocument|Binding|returnValue|createDelegate|catch|Node|DOM||dup|reduce|ancestor|child|INDEXED|rescape|in|match|version|ID|splice|HTMLElement|win|remove|try|getNextElementSibling|defaultView|getDefaultView|type|_prototyping|StaticNodeList|DocumentEvent|AbstractView|map|create|attachEvent|source|global|ignoreCase|sorter|not|NodeSelector|lang|unescape|id|add|fired|default|dispatchEvent|Legacy|join|dispatch|Boolean|Hash|window|charAt|sort|nodeName|getAttribute|getSourceIndex|tagName|parentNode|copy|ownerDocument|continue|HTMLDocument|ViewCSS|ElementSelector|DocumentSelector|concat|assertType|verify|Abstract|cloneID|Error|childNodes|matchSingle|VAR|disabled|operators|parse|base2_test|last|trim|parseInt|_constructing|escape|replacement|matchAll|toUpperCase|Collection|cancelable|callee|target|number|keys|initEvent|merge|_bound|getElementById|reverse|tags|removeAt|src|Window|activeElement|result|insertAt|bindings|documentElement|isDocument|_extend|getTextContent|getPreviousElementSibling|previousSibling|getNodeIndex|nextSibling|TypeError|Invalid|every|self|break|method|platform|gi|navigator|register|body|createElement|e0|STORE|TEST|root|alpha|checked|pseudoClasses|_nthChild|WILD_CARD|IMPLIED_ASTERISK|WHITESPACE|ESCAPE|optimise|is|_strings|STRING|IGNORE|evaluate|snapshotItem|matchesSelector|TRIM|getElementsByClassName|IMPLIED_SPACE|getComputedStyle|RESCAPE|complete|readyState|count|__ready|script|key|Duplicate|load|createEventObject|Events|Date|on|FN|values|preventDefault|cancelBubble|bubbles|setAttribute|valueOf|Number|children|toLowerCase|nodeValue|specified|href|members|hasClass|compareDocumentPosition|KHTML|max|attributes|Math|isEmpty|combine|pluck|invoke|object|filter|instantiated|be|failed|cannot|Infinity|Class|Assertion|onunload|uniqueID|removeClass|addClass|focus|htmlFor|class|nth|getElementsByTagName|span|cc_on|only|first|enabled|empty|odd|even|base2_|0n|isNaN|yet|supported|verboten|references|removeAttribute|Back|selector|CSS|valid|SyntaxError|snapshotLength|XPathResult|bounds|toCamelCase|of|currentStyle|out|100|clearInterval|Index|loaded|setInterval||storeAt|removeNode|onreadystatechange|70|defer|write|onload|setTimeout|UIEvents|union|getTimezoneOffset|Windows|event|fireEvent|removeEventListener|srcElement|mac|stopPropagation|longDesc|readOnly|maxLength|unshift|encType|tabIndex|accessKey|dateTime|shift|vAlign|rowSpan|bbase|colSpan|pop|getAttributeNode|from|operand|lastIndexOf|instanceof|insertBefore|parentWindow|innerText|firstChild|textContent|some'.split('|'),0,{}))

Modified: kukit/kukit.js/branch/performance_improvement/kukit/dom.js
==============================================================================
--- kukit/kukit.js/branch/performance_improvement/kukit/dom.js	(original)
+++ kukit/kukit.js/branch/performance_improvement/kukit/dom.js	Sun Apr 29 11:01:25 2007
@@ -129,12 +129,20 @@
         throw 'Selection error in kukit.dom.cssQuery';
     }
     // global scope, always.
-    var result = cssQuery(selector);
+
+    var results = base2.DOM.Document.matchAll(document, selector);
+    var nodes = [];
+    for(var i = 0; i < results.length; i++) {
+        nodes.push(results.item(i));
+    }
+    
+
+    // TODO: I am not sure if this comment below applies to base2
     // This is very bad. However the binding makes sure that
     // nodes once bound will never be bound again
     // (also, noticed the following issue: cssQuery, when called
     // on an element, does not check the element itself.)
-    return result;
+    return nodes;
 };
 
 kukit.dom.focus = function(node) {


More information about the Kukit-checkins mailing list