/**
  * Extract the data from an object.
  *
  * @param mixed $value
  *
  * @return array
  */
 protected function serializeObject($value)
 {
     $serialized = EloquentDriver::serialize($value);
     if ($value !== $serialized) {
         return $serialized;
     }
     return parent::serializeObject($value);
 }
 /**
  * Extract the data from an object.
  *
  * @param mixed $value
  *
  * @return array
  */
 protected function serializeObject($value)
 {
     if ($value instanceof \Illuminate\Database\Eloquent\Collection) {
         $items = [];
         foreach ($value->all() as &$v) {
             $items[] = $this->serializeObject($v);
         }
         return [self::MAP_TYPE => 'array', self::SCALAR_VALUE => $items];
     }
     if (is_subclass_of($value, Model::class, true)) {
         $stdClass = (object) $value->getAttributes();
         $data = $this->serializeData($stdClass);
         $data[self::CLASS_IDENTIFIER_KEY] = get_class($value);
         return $data;
     }
     return parent::serializeObject($value);
 }
 /**
  * Extract the data from an object.
  *
  * @param mixed $value
  *
  * @return array
  */
 protected function serializeObject($value)
 {
     $serialized = EloquentDriver::serialize($value);
     return $value !== $serialized ? $serialized : parent::serializeObject($value);
 }