|
|
/*! * Module dependencies. */
var SchemaType = require('../schematype') , CastError = SchemaType.CastError , errorMessages = require('../error').messages , utils = require('../utils') , Document
/** * EmbeddedDocument SchemaType constructor. * * @param {String} key * @param {Object} options * @inherits SchemaType * @api private */
function SchemaEmbedded (key, options, EmbeddedDoc, parentArray) { SchemaType.call(this, key, options, 'EmbeddedDocument'); this.EmbeddedDoc = EmbeddedDoc; this.parentArray = parentArray; };
/*! * Inherits from SchemaType. */
SchemaEmbedded.prototype.__proto__ = SchemaType.prototype;
SchemaEmbedded.prototype.cast = function (value, doc, init) { return new this.EmbeddedDoc(value, this.parentArray); }
/*! * Module exports. */
module.exports = SchemaEmbedded;
|