use clarax::prelude::*;
use crate::error::DjangoError;
use crate::field_types::FieldDescriptor;
use crate::serializer::{serialize_model_fields, SerializedRecord};
use crate::validator::{validate_field_batch, ValidationReport};
use clarax_core::types::FieldValue;
pub fn serialize_fields_release_gil(
py: Python<'_>,
descriptors: Vec<FieldDescriptor>,
values: Vec<FieldValue>,
) -> Result<SerializedRecord, DjangoError> {
py.detach(|| serialize_model_fields(&descriptors, &values))
}
pub fn validate_batch_release_gil(
py: Python<'_>,
entries: Vec<(FieldDescriptor, FieldValue)>,
) -> ValidationReport {
py.detach(|| validate_field_batch(&entries))
}