function SchemaMixed(path, options) {
  if (options && options.default) {
    const def = options.default;
    if (Array.isArray(def) && def.length === 0) {
      // make sure empty array defaults are handled
      options.default = Array;
    } else if (!options.shared && isObject(def) && Object.keys(def).length === 0) {
      // prevent odd "shared" objects between documents
      options.default = function() {
        return {};
      };
    }
  }

  SchemaType.call(this, path, options, 'Mixed');

  this[symbols.schemaMixedSymbol] = true;
}
Mixed SchemaType constructor.

@param {String} path
@param {Object} options
@inherits SchemaType
@api public