jsdoc-oblivion
Version:
A gray and blue theme for JSDoc.
1,453 lines (481 loc) • 20.2 kB
HTML
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=yes, width=device-width">
<title>Oblivion — Class: queryOperators</title>
<link rel="shortcut icon" href="/favicon.ico">
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link type="text/css" rel="stylesheet" href="styles/sunlight.dark.css">
<link type="text/css" rel="stylesheet" href="styles/site.oblivion.css">
</head>
<body>
<div class="container-fluid">
<div class="navbar navbar-fixed-top navbar-inverse">
<div class="navbar-inner">
<a class="brand" href="index.html">Oblivion</a>
<ul class="nav">
<li class="dropdown">
<a href="modules.list.html" class="dropdown-toggle" data-toggle="dropdown">Modules<b
class="caret"></b></a>
<ul class="dropdown-menu ">
<li>
<a href="module-base.html">base</a>
</li>
<li>
<a href="module-base_chains.html">base/chains</a>
</li>
<li>
<a href="module-documents_binder.html">documents/binder</a>
</li>
<li>
<a href="module-documents_model.html">documents/model</a>
</li>
<li>
<a href="module-documents_probe.html">documents/probe</a>
</li>
<li>
<a href="module-documents_schema.html">documents/schema</a>
</li>
<li>
<a href="module-ink_collector.html">ink/collector</a>
</li>
<li>
<a href="module-mixins_bussable.html">mixins/bussable</a>
</li>
<li>
<a href="module-mixins_signalable.html">mixins/signalable</a>
</li>
<li>
<a href="module-strings_format.html">strings/format</a>
</li>
<li>
<a href="module-utils_logger.html">utils/logger</a>
</li>
</ul>
</li>
<li class="dropdown">
<a href="classes.list.html" class="dropdown-toggle" data-toggle="dropdown">Classes<b
class="caret"></b></a>
<ul class="dropdown-menu ">
<li>
<a href="base.html">base</a>
</li>
<li>
<a href="base_chains.html">base/chains</a>
</li>
<li>
<a href="documents_model.html">documents/model</a>
</li>
<li>
<a href="module-documents_probe.queryOperators.html">documents/probe.queryOperators</a>
</li>
<li>
<a href="module-documents_probe.updateOperators.html">documents/probe.updateOperators</a>
</li>
<li>
<a href="module-ink_collector-ACollector.html">ink/collector~ACollector</a>
</li>
<li>
<a href="module-ink_collector-CollectorBase.html">ink/collector~CollectorBase</a>
</li>
<li>
<a href="module-ink_collector-OCollector.html">ink/collector~OCollector</a>
</li>
<li>
<a href="module-mixins_signalable-Signal.html">mixins/signalable~Signal</a>
</li>
<li>
<a href="utils_logger.Logger.html">utils/logger.Logger</a>
</li>
</ul>
</li>
<li class="dropdown">
<a href="mixins.list.html" class="dropdown-toggle" data-toggle="dropdown">Mixins<b
class="caret"></b></a>
<ul class="dropdown-menu ">
<li>
<a href="documents_schema.html">documents/schema</a>
</li>
<li>
<a href="mixins_bussable.html">mixins/bussable</a>
</li>
<li>
<a href="mixins_signalable.html">mixins/signalable</a>
</li>
</ul>
</li>
</ul>
</div>
</div>
<div class="row-fluid">
<div class="span3">
<div id="toc"></div>
</div>
<div class="span9">
<div id="main">
<h1 class="page-title">Class: queryOperators</h1>
<section>
<header>
<h2>
<span class="ancestors"><a href="module-documents_probe.html">documents/probe</a>.</span>
queryOperators
</h2>
<div class="class-description">This is not actually a class, but an artifact of the documentation system</div>
</header>
<article>
<div class="container-overview">
<dt>
<h4 class="name" id="queryOperators"><span class="type-signature"></span>new queryOperators<span class="signature">()</span><span class="type-signature"></span></h4>
</dt>
<dd>
<div class="description">
These are the supported query operators
</div>
<dl class="details">
</dl>
</dd>
</div>
<h3 class="subsection-title">Members</h3>
<dl>
<dt class="name" id=".$all">
<h4><span class="type-signature"><static> </span>$all<span class="type-signature"></span></h4>
</dt>
<dd>
<div class="description">
`$all` checks to see if all of the members of the query are included in an array
`{array: {$all: [val1, val2, val3]}}`
</div>
<dl class="details">
</dl>
<h5>Example</h5>
<pre class="sunlight-highlight-javascript">var probe = require("documents/probe");
probe.find( data, {"categories" : {$all : ["cat4", "cat2", "cat1"]}} );</pre>
</dd>
<dt class="name" id=".$and">
<h4><span class="type-signature"><static> </span>$and<span class="type-signature"></span></h4>
</dt>
<dd>
<div class="description">
Returns true if all of the conditions of the query are met
`{$and: [query1, query2, query3]}`
</div>
<dl class="details">
</dl>
<h5>Example</h5>
<pre class="sunlight-highlight-javascript">var probe = require("documents/probe");
probe.find( data, {$and : [
{"name.first" : "Mildred"},
{"name.last" : "Graves"}
]} );</pre>
</dd>
<dt class="name" id=".$elemMatch">
<h4><span class="type-signature"><static> </span>$elemMatch<span class="type-signature"></span></h4>
</dt>
<dd>
<div class="description">
This is like $all except that it works with an array of objects or value. It checks to see the array matches all
of the conditions of the query
`{array: {$elemMatch: {path: value, path: {$operation: value2}}}`
</div>
<dl class="details">
</dl>
<h5>Example</h5>
<pre class="sunlight-highlight-javascript">var probe = require("documents/probe");
probe.find( data, {attr : {$elemMatch : [
{color : "red", "hand" : "left"}
]}} );</pre>
</dd>
<dt class="name" id=".$eq">
<h4><span class="type-signature"><static> </span>$eq<span class="type-signature"></span></h4>
</dt>
<dd>
<div class="description">
`$eq` performs a `===` comparison by comparing the value directly if it is an atomic value.
otherwise if it is an array, it checks to see if the value looked for is in the array.
`{field: value}` or `{field: {$eq : value}}` or `{array: value}` or `{array: {$eq : value}}`
</div>
<dl class="details">
</dl>
<h5>Example</h5>
<pre class="sunlight-highlight-javascript">var probe = require("documents/probe");
probe.find( data, {categories : "cat1"} );
// is the same as
probe.find( data, {categories : {$eq: "cat1"}} );</pre>
</dd>
<dt class="name" id=".$exists">
<h4><span class="type-signature"><static> </span>$exists<span class="type-signature"></span></h4>
</dt>
<dd>
<div class="description">
`$exists` Sees if a field exists.
`{field: {$exists: true|false}}`
</div>
<dl class="details">
</dl>
<h5>Example</h5>
<pre class="sunlight-highlight-javascript">var probe = require("documents/probe");
probe.find( data, {"name.middle" : {$exists : true}} );</pre>
</dd>
<dt class="name" id=".$gt">
<h4><span class="type-signature"><static> </span>$gt<span class="type-signature"></span></h4>
</dt>
<dd>
<div class="description">
`$gt` Sees if a field is greater than the value
`{field: {$gt: value}}`
</div>
<dl class="details">
</dl>
<h5>Example</h5>
<pre class="sunlight-highlight-javascript">var probe = require("documents/probe");
probe.find( data, {"age" : {$gt : 24}} );</pre>
</dd>
<dt class="name" id=".$gte">
<h4><span class="type-signature"><static> </span>$gte<span class="type-signature"></span></h4>
</dt>
<dd>
<div class="description">
`$gte` Sees if a field is greater than or equal to the value
`{field: {$gte: value}}`
</div>
<dl class="details">
</dl>
<h5>Example</h5>
<pre class="sunlight-highlight-javascript">var probe = require("documents/probe");
probe.find( data, {"age" : {$gte : 50}} );</pre>
</dd>
<dt class="name" id=".$in">
<h4><span class="type-signature"><static> </span>$in<span class="type-signature"></span></h4>
</dt>
<dd>
<div class="description">
`$in` Sees if a field has one of the values in the query
`{field: {$in: [test1, test2, test3,...]}}`
</div>
<dl class="details">
</dl>
<h5>Example</h5>
<pre class="sunlight-highlight-javascript">var probe = require("documents/probe");
probe.find( data, {"age" : {$in : [24, 28, 60]}} );</pre>
</dd>
<dt class="name" id=".$lt">
<h4><span class="type-signature"><static> </span>$lt<span class="type-signature"></span></h4>
</dt>
<dd>
<div class="description">
`$lt` Sees if a field is less than the value
`{field: {$lt: value}}`
</div>
<dl class="details">
</dl>
<h5>Example</h5>
<pre class="sunlight-highlight-javascript">var probe = require("documents/probe");
probe.find( data, {"age" : {$lt : 24}} );</pre>
</dd>
<dt class="name" id=".$lte">
<h4><span class="type-signature"><static> </span>$lte<span class="type-signature"></span></h4>
</dt>
<dd>
<div class="description">
`$lte` Sees if a field is less than or equal to the value
`{field: {$lte: value}}`
</div>
<dl class="details">
</dl>
<h5>Example</h5>
<pre class="sunlight-highlight-javascript">var probe = require("documents/probe");
probe.find( data, {"age" : {$lte : 50}} );</pre>
</dd>
<dt class="name" id=".$mod">
<h4><span class="type-signature"><static> </span>$mod<span class="type-signature"></span></h4>
</dt>
<dd>
<div class="description">
Checks equality to a modulus operation on a field
`{field: {$mod: [divisor, remainder]}}`
</div>
<dl class="details">
</dl>
<h5>Example</h5>
<pre class="sunlight-highlight-javascript">var probe = require("documents/probe");
probe.find( data, {"age" : {$mod : [2, 0]}} );</pre>
</dd>
<dt class="name" id=".$ne">
<h4><span class="type-signature"><static> </span>$ne<span class="type-signature"></span></h4>
</dt>
<dd>
<div class="description">
`$ne` performs a `!==` comparison by comparing the value directly if it is an atomic value. Otherwise, if it is an array
this is performs a "not in array".
'{field: {$ne : value}}` or '{array: {$ne : value}}`
</div>
<dl class="details">
</dl>
<h5>Example</h5>
<pre class="sunlight-highlight-javascript">var probe = require("documents/probe");
probe.find( data, {"name.first" : {$ne : "Sheryl"}} );</pre>
</dd>
<dt class="name" id=".$nin">
<h4><span class="type-signature"><static> </span>$nin<span class="type-signature"></span></h4>
</dt>
<dd>
<div class="description">
`$nin` Sees if a field has none of the values in the query
`{field: {$nin: [test1, test2, test3,...]}}`
</div>
<dl class="details">
</dl>
<h5>Example</h5>
<pre class="sunlight-highlight-javascript">var probe = require("documents/probe");
probe.find( data, {"age" : {$nin : [24, 28, 60]}} );</pre>
</dd>
<dt class="name" id=".$nor">
<h4><span class="type-signature"><static> </span>$nor<span class="type-signature"></span></h4>
</dt>
<dd>
<div class="description">
Returns true if none of the conditions of the query are met
`{$nor: [query1, query2, query3]}`
</div>
<dl class="details">
</dl>
<h5>Example</h5>
<pre class="sunlight-highlight-javascript">var probe = require("documents/probe");
probe.find( data, {$nor : [
{"age" : {$in : [24, 28, 60]}},
{categories : "cat1"}
]} );</pre>
</dd>
<dt class="name" id=".$not">
<h4><span class="type-signature"><static> </span>$not<span class="type-signature"></span></h4>
</dt>
<dd>
<div class="description">
Logical NOT on the conditions of the query
`{$not: [query1, query2, query3]}`
</div>
<dl class="details">
</dl>
<h5>Example</h5>
<pre class="sunlight-highlight-javascript">var probe = require("documents/probe");
probe.find( data, {$not : {"age" : {$lt : 24}}} );</pre>
</dd>
<dt class="name" id=".$or">
<h4><span class="type-signature"><static> </span>$or<span class="type-signature"></span></h4>
</dt>
<dd>
<div class="description">
Returns true if any of the conditions of the query are met
`{$or: [query1, query2, query3]}`
</div>
<dl class="details">
</dl>
<h5>Example</h5>
<pre class="sunlight-highlight-javascript">var probe = require("documents/probe");
probe.find( data, {$or : [
"age" : {$in : [24, 28, 60]}},
{categories : "cat1"}
]} );</pre>
</dd>
<dt class="name" id=".$regex">
<h4><span class="type-signature"><static> </span>$regex<span class="type-signature"></span></h4>
</dt>
<dd>
<div class="description">
Performs a regular expression test againts the field
`{field: {$regex: re, $options: reOptions}}`
</div>
<dl class="details">
</dl>
<h5>Example</h5>
<pre class="sunlight-highlight-javascript">var probe = require("documents/probe");
probe.find( data, {"name.first" : {$regex : "m*", $options : "i"}} );</pre>
</dd>
<dt class="name" id=".$size">
<h4><span class="type-signature"><static> </span>$size<span class="type-signature"></span></h4>
</dt>
<dd>
<div class="description">
Compares the size of the field/array to the query. This can be used on arrays, strings and objects (where it will count keys)
`{'field|array`: {$size: value}}`
</div>
<dl class="details">
</dl>
<h5>Example</h5>
<pre class="sunlight-highlight-javascript">var probe = require("documents/probe");
probe.find( data, {attr : {$size : 3}} );</pre>
</dd>
</dl>
</article>
</section>
</div>
<div class="clearfix"></div>
<footer>
<span class="copyright">
Copyright © 2014 <a href='http://moogs.io' target='_blank'>Moogs, LLC.</a>
</span>
<br />
<span class="jsdoc-message">
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc" target="_blank">JSDoc 3.4.3</a>
on 2017-07-16T00:18:22-07:00
</span>
</footer>
</div>
<br clear="both">
</div>
</div>
<!--<script src="scripts/sunlight.js"></script>-->
<script src="scripts/docstrap.lib.js"></script>
<script src="scripts/bootstrap-dropdown.js"></script>
<script src="scripts/toc.js"></script>
<script>
$( function () {
$( "[id*='$']" ).each( function () {
var $this = $( this );
$this.attr( "id", $this.attr( "id" ).replace( "$", "__" ) );
} );
$( "#toc" ).toc( {
anchorName : function ( i, heading, prefix ) {
return $( heading ).attr( "id" ) || ( prefix + i );
},
selectors : "h1,h2,h3,h4",
showAndHide : false,
scrollTo : "100px"
} );
$( "#toc>ul" ).addClass( "nav nav-pills nav-stacked" );
$( "#main span[id^='toc']" ).addClass( "toc-shim" );
$( '.dropdown-toggle' ).dropdown();
// $( ".tutorial-section pre, .readme-section pre" ).addClass( "sunlight-highlight-javascript" ).addClass( "linenums" );
$( ".tutorial-section pre, .readme-section pre" ).each( function () {
var $this = $( this );
var example = $this.find( "code" );
exampleText = example.html();
var lang = /{@lang (.*?)}/.exec( exampleText );
if ( lang && lang[1] ) {
exampleText = exampleText.replace( lang[0], "" );
example.html( exampleText );
lang = lang[1];
} else {
lang = "javascript";
}
if ( lang ) {
$this
.addClass( "sunlight-highlight-" + lang )
.addClass( "linenums" )
.html( example.html() );
}
} );
Sunlight.highlightAll( {
lineNumbers : true,
showMenu : true,
enableDoclinks : true
} );
} );
</script>
<!--Navigation and Symbol Display-->
<!--Google Analytics-->
</body>
</html>