@@ -22,7 +22,7 @@ impl PyByteArray {
22
22
/// Creates a new Python bytearray object.
23
23
///
24
24
/// The byte string is initialized by copying the data from the `&[u8]`.
25
- pub fn new_bound < ' py > ( py : Python < ' py > , src : & [ u8 ] ) -> Bound < ' py , PyByteArray > {
25
+ pub fn new < ' py > ( py : Python < ' py > , src : & [ u8 ] ) -> Bound < ' py , PyByteArray > {
26
26
let ptr = src. as_ptr ( ) . cast ( ) ;
27
27
let len = src. len ( ) as ffi:: Py_ssize_t ;
28
28
unsafe {
@@ -32,6 +32,13 @@ impl PyByteArray {
32
32
}
33
33
}
34
34
35
+ /// Deprecated name for [`PyByteArray::new`].
36
+ #[ deprecated( since = "0.23.0" , note = "renamed to `PyByteArray::new`" ) ]
37
+ #[ inline]
38
+ pub fn new_bound < ' py > ( py : Python < ' py > , src : & [ u8 ] ) -> Bound < ' py , PyByteArray > {
39
+ Self :: new ( py, src)
40
+ }
41
+
35
42
/// Creates a new Python `bytearray` object with an `init` closure to write its contents.
36
43
/// Before calling `init` the bytearray is zero-initialised.
37
44
/// * If Python raises a MemoryError on the allocation, `new_with` will return
@@ -46,7 +53,7 @@ impl PyByteArray {
46
53
///
47
54
/// # fn main() -> PyResult<()> {
48
55
/// Python::with_gil(|py| -> PyResult<()> {
49
- /// let py_bytearray = PyByteArray::new_bound_with (py, 10, |bytes: &mut [u8]| {
56
+ /// let py_bytearray = PyByteArray::new_with (py, 10, |bytes: &mut [u8]| {
50
57
/// bytes.copy_from_slice(b"Hello Rust");
51
58
/// Ok(())
52
59
/// })?;
@@ -56,11 +63,7 @@ impl PyByteArray {
56
63
/// })
57
64
/// # }
58
65
/// ```
59
- pub fn new_bound_with < F > (
60
- py : Python < ' _ > ,
61
- len : usize ,
62
- init : F ,
63
- ) -> PyResult < Bound < ' _ , PyByteArray > >
66
+ pub fn new_with < F > ( py : Python < ' _ > , len : usize , init : F ) -> PyResult < Bound < ' _ , PyByteArray > >
64
67
where
65
68
F : FnOnce ( & mut [ u8 ] ) -> PyResult < ( ) > ,
66
69
{
@@ -81,15 +84,36 @@ impl PyByteArray {
81
84
}
82
85
}
83
86
87
+ /// Deprecated name for [`PyByteArray::new_with`].
88
+ #[ deprecated( since = "0.23.0" , note = "renamed to `PyByteArray::new_with`" ) ]
89
+ #[ inline]
90
+ pub fn new_bound_with < F > (
91
+ py : Python < ' _ > ,
92
+ len : usize ,
93
+ init : F ,
94
+ ) -> PyResult < Bound < ' _ , PyByteArray > >
95
+ where
96
+ F : FnOnce ( & mut [ u8 ] ) -> PyResult < ( ) > ,
97
+ {
98
+ Self :: new_with ( py, len, init)
99
+ }
100
+
84
101
/// Creates a new Python `bytearray` object from another Python object that
85
102
/// implements the buffer protocol.
86
- pub fn from_bound < ' py > ( src : & Bound < ' py , PyAny > ) -> PyResult < Bound < ' py , PyByteArray > > {
103
+ pub fn from < ' py > ( src : & Bound < ' py , PyAny > ) -> PyResult < Bound < ' py , PyByteArray > > {
87
104
unsafe {
88
105
ffi:: PyByteArray_FromObject ( src. as_ptr ( ) )
89
106
. assume_owned_or_err ( src. py ( ) )
90
107
. downcast_into_unchecked ( )
91
108
}
92
109
}
110
+
111
+ ///Deprecated name for [`PyByteArray::from`].
112
+ #[ deprecated( since = "0.23.0" , note = "renamed to `PyByteArray::from`" ) ]
113
+ #[ inline]
114
+ pub fn from_bound < ' py > ( src : & Bound < ' py , PyAny > ) -> PyResult < Bound < ' py , PyByteArray > > {
115
+ Self :: from ( src)
116
+ }
93
117
}
94
118
95
119
/// Implementation of functionality for [`PyByteArray`].
@@ -227,7 +251,7 @@ pub trait PyByteArrayMethods<'py>: crate::sealed::Sealed {
227
251
/// # use pyo3::prelude::*;
228
252
/// # use pyo3::types::PyByteArray;
229
253
/// # Python::with_gil(|py| {
230
- /// let bytearray = PyByteArray::new_bound (py, b"Hello World.");
254
+ /// let bytearray = PyByteArray::new (py, b"Hello World.");
231
255
/// let mut copied_message = bytearray.to_vec();
232
256
/// assert_eq!(b"Hello World.", copied_message.as_slice());
233
257
///
@@ -308,7 +332,7 @@ impl<'py> TryFrom<&Bound<'py, PyAny>> for Bound<'py, PyByteArray> {
308
332
/// Creates a new Python `bytearray` object from another Python object that
309
333
/// implements the buffer protocol.
310
334
fn try_from ( value : & Bound < ' py , PyAny > ) -> Result < Self , Self :: Error > {
311
- PyByteArray :: from_bound ( value)
335
+ PyByteArray :: from ( value)
312
336
}
313
337
}
314
338
@@ -321,7 +345,7 @@ mod tests {
321
345
fn test_len ( ) {
322
346
Python :: with_gil ( |py| {
323
347
let src = b"Hello Python" ;
324
- let bytearray = PyByteArray :: new_bound ( py, src) ;
348
+ let bytearray = PyByteArray :: new ( py, src) ;
325
349
assert_eq ! ( src. len( ) , bytearray. len( ) ) ;
326
350
} ) ;
327
351
}
@@ -330,7 +354,7 @@ mod tests {
330
354
fn test_as_bytes ( ) {
331
355
Python :: with_gil ( |py| {
332
356
let src = b"Hello Python" ;
333
- let bytearray = PyByteArray :: new_bound ( py, src) ;
357
+ let bytearray = PyByteArray :: new ( py, src) ;
334
358
335
359
let slice = unsafe { bytearray. as_bytes ( ) } ;
336
360
assert_eq ! ( src, slice) ;
@@ -342,7 +366,7 @@ mod tests {
342
366
fn test_as_bytes_mut ( ) {
343
367
Python :: with_gil ( |py| {
344
368
let src = b"Hello Python" ;
345
- let bytearray = PyByteArray :: new_bound ( py, src) ;
369
+ let bytearray = PyByteArray :: new ( py, src) ;
346
370
347
371
let slice = unsafe { bytearray. as_bytes_mut ( ) } ;
348
372
assert_eq ! ( src, slice) ;
@@ -358,7 +382,7 @@ mod tests {
358
382
fn test_to_vec ( ) {
359
383
Python :: with_gil ( |py| {
360
384
let src = b"Hello Python" ;
361
- let bytearray = PyByteArray :: new_bound ( py, src) ;
385
+ let bytearray = PyByteArray :: new ( py, src) ;
362
386
363
387
let vec = bytearray. to_vec ( ) ;
364
388
assert_eq ! ( src, vec. as_slice( ) ) ;
@@ -369,10 +393,10 @@ mod tests {
369
393
fn test_from ( ) {
370
394
Python :: with_gil ( |py| {
371
395
let src = b"Hello Python" ;
372
- let bytearray = PyByteArray :: new_bound ( py, src) ;
396
+ let bytearray = PyByteArray :: new ( py, src) ;
373
397
374
398
let ba: PyObject = bytearray. into ( ) ;
375
- let bytearray = PyByteArray :: from_bound ( ba. bind ( py) ) . unwrap ( ) ;
399
+ let bytearray = PyByteArray :: from ( ba. bind ( py) ) . unwrap ( ) ;
376
400
377
401
assert_eq ! ( src, unsafe { bytearray. as_bytes( ) } ) ;
378
402
} ) ;
@@ -381,7 +405,7 @@ mod tests {
381
405
#[ test]
382
406
fn test_from_err ( ) {
383
407
Python :: with_gil ( |py| {
384
- if let Err ( err) = PyByteArray :: from_bound ( py. None ( ) . bind ( py) ) {
408
+ if let Err ( err) = PyByteArray :: from ( py. None ( ) . bind ( py) ) {
385
409
assert ! ( err. is_instance_of:: <exceptions:: PyTypeError >( py) ) ;
386
410
} else {
387
411
panic ! ( "error" ) ;
@@ -393,7 +417,7 @@ mod tests {
393
417
fn test_try_from ( ) {
394
418
Python :: with_gil ( |py| {
395
419
let src = b"Hello Python" ;
396
- let bytearray: & Bound < ' _ , PyAny > = & PyByteArray :: new_bound ( py, src) ;
420
+ let bytearray: & Bound < ' _ , PyAny > = & PyByteArray :: new ( py, src) ;
397
421
let bytearray: Bound < ' _ , PyByteArray > = TryInto :: try_into ( bytearray) . unwrap ( ) ;
398
422
399
423
assert_eq ! ( src, unsafe { bytearray. as_bytes( ) } ) ;
@@ -404,7 +428,7 @@ mod tests {
404
428
fn test_resize ( ) {
405
429
Python :: with_gil ( |py| {
406
430
let src = b"Hello Python" ;
407
- let bytearray = PyByteArray :: new_bound ( py, src) ;
431
+ let bytearray = PyByteArray :: new ( py, src) ;
408
432
409
433
bytearray. resize ( 20 ) . unwrap ( ) ;
410
434
assert_eq ! ( 20 , bytearray. len( ) ) ;
@@ -414,7 +438,7 @@ mod tests {
414
438
#[ test]
415
439
fn test_byte_array_new_with ( ) -> super :: PyResult < ( ) > {
416
440
Python :: with_gil ( |py| -> super :: PyResult < ( ) > {
417
- let py_bytearray = PyByteArray :: new_bound_with ( py, 10 , |b : & mut [ u8 ] | {
441
+ let py_bytearray = PyByteArray :: new_with ( py, 10 , |b : & mut [ u8 ] | {
418
442
b. copy_from_slice ( b"Hello Rust" ) ;
419
443
Ok ( ( ) )
420
444
} ) ?;
@@ -427,7 +451,7 @@ mod tests {
427
451
#[ test]
428
452
fn test_byte_array_new_with_zero_initialised ( ) -> super :: PyResult < ( ) > {
429
453
Python :: with_gil ( |py| -> super :: PyResult < ( ) > {
430
- let py_bytearray = PyByteArray :: new_bound_with ( py, 10 , |_b : & mut [ u8 ] | Ok ( ( ) ) ) ?;
454
+ let py_bytearray = PyByteArray :: new_with ( py, 10 , |_b : & mut [ u8 ] | Ok ( ( ) ) ) ?;
431
455
let bytearray: & [ u8 ] = unsafe { py_bytearray. as_bytes ( ) } ;
432
456
assert_eq ! ( bytearray, & [ 0 ; 10 ] ) ;
433
457
Ok ( ( ) )
@@ -438,7 +462,7 @@ mod tests {
438
462
fn test_byte_array_new_with_error ( ) {
439
463
use crate :: exceptions:: PyValueError ;
440
464
Python :: with_gil ( |py| {
441
- let py_bytearray_result = PyByteArray :: new_bound_with ( py, 10 , |_b : & mut [ u8 ] | {
465
+ let py_bytearray_result = PyByteArray :: new_with ( py, 10 , |_b : & mut [ u8 ] | {
442
466
Err ( PyValueError :: new_err ( "Hello Crustaceans!" ) )
443
467
} ) ;
444
468
assert ! ( py_bytearray_result. is_err( ) ) ;
0 commit comments