-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathjsonQL.min.js
More file actions
1 lines (1 loc) · 1.01 KB
/
jsonQL.min.js
File metadata and controls
1 lines (1 loc) · 1.01 KB
1
jsonQuery=function(a){function b(b,c,d){c=c.split(".");for(x in c){b=b[c[x]];if(b==a)return a}return b}function c(b,c,d,e,f){c=c.split("."),f=c.pop();for(e in c)b[c[e]]==a&&(b[c[e]]={}),b=b[c[e]];b[f]=d}function d(a,c,d,e,f){var h=[],i={};for(x=0;x<c.length;x++)h[x]=c[x];for(x in g)(function(c,g){i[c]=function(c,i){for(i=0;i<h.length;i++)g(b(h[i],d),c)&&e(h[i]);return f&&f(),a}})(x,g[x]);return i}function e(a,b){var c=[];return{where:function(b){return d(this,a,b,function(a){c.push(a)})},and:function(a){var b=[];return d(this,c,a,function(a){b.push(a)},function(){c=b})},or:function(b){return d(this,a,b,function(a){c.push(a)})},get:function(){var a=[],d;for(d=0;d<c.length;d++)a[d]=b(c[d]);return a}}}function f(a){return{select:function(c){return e(a,function(a){return b(a,c)})},update:function(b){return e(a,function(a){return c(a,b)})}}}var g=f.test={eq:function(a,b){return a==b},lt:function(a,b){return a<b},gt:function(a,b){return a>b},like:function(a,b){return(""+a).indexOf(b)>=0},is:function(a,b){return b(a)}};return f}()