pub(crate) fn serialize<T, O>(value: &T, options: O) -> Result<Vec<u8>>where T: Serialize + ?Sized, O: InternalOptions,