Version 1
[yaffs-website] / node_modules / grunt-legacy-log-utils / node_modules / lodash / _baseConforms.js
diff --git a/node_modules/grunt-legacy-log-utils/node_modules/lodash/_baseConforms.js b/node_modules/grunt-legacy-log-utils/node_modules/lodash/_baseConforms.js
new file mode 100644 (file)
index 0000000..888434d
--- /dev/null
@@ -0,0 +1,32 @@
+var keys = require('./keys');
+
+/**
+ * The base implementation of `_.conforms` which doesn't clone `source`.
+ *
+ * @private
+ * @param {Object} source The object of property predicates to conform to.
+ * @returns {Function} Returns the new function.
+ */
+function baseConforms(source) {
+  var props = keys(source),
+      length = props.length;
+
+  return function(object) {
+    if (object == null) {
+      return !length;
+    }
+    var index = length;
+    while (index--) {
+      var key = props[index],
+          predicate = source[key],
+          value = object[key];
+
+      if ((value === undefined && !(key in Object(object))) || !predicate(value)) {
+        return false;
+      }
+    }
+    return true;
+  };
+}
+
+module.exports = baseConforms;