2 * The base implementation of `_.conformsTo` which accepts `props` to check.
5 * @param {Object} object The object to inspect.
6 * @param {Object} source The object of property predicates to conform to.
7 * @returns {boolean} Returns `true` if `object` conforms, else `false`.
9 function baseConformsTo(object, source, props) {
10 var length = props.length;
14 object = Object(object);
16 var key = props[length],
17 predicate = source[key],
20 if ((value === undefined && !(key in object)) || !predicate(value)) {
27 module.exports = baseConformsTo;