11// SPDX-License-Identifier: (Apache-2.0 OR MIT)
22
3- use std :: os :: raw :: c_char ;
3+ use crate :: typeref ;
44use pyo3:: prelude:: * ;
55use pyo3:: types:: * ;
66use pyo3:: IntoPyPointer ;
@@ -9,7 +9,7 @@ use smallvec::SmallVec;
99use std:: borrow:: Cow ;
1010use std:: fmt;
1111use std:: marker:: PhantomData ;
12- use crate :: typeref ;
12+ use std :: os :: raw :: c_char ;
1313
1414import_exception ! ( json, JSONDecodeError ) ;
1515
@@ -67,18 +67,14 @@ impl<'de, 'a> Visitor<'de> for JsonValue<'a> {
6767 E : de:: Error ,
6868 {
6969 match value {
70- true => {
71- unsafe {
72- pyo3:: ffi:: Py_INCREF ( typeref:: TRUE ) ;
73- Ok ( typeref:: TRUE )
74- }
70+ true => unsafe {
71+ pyo3:: ffi:: Py_INCREF ( typeref:: TRUE ) ;
72+ Ok ( typeref:: TRUE )
73+ } ,
74+ false => unsafe {
75+ pyo3:: ffi:: Py_INCREF ( typeref:: FALSE ) ;
76+ Ok ( typeref:: FALSE )
7577 } ,
76- false => {
77- unsafe {
78- pyo3:: ffi:: Py_INCREF ( typeref:: FALSE ) ;
79- Ok ( typeref:: FALSE )
80- }
81- }
8278 }
8379 }
8480
@@ -107,15 +103,24 @@ impl<'de, 'a> Visitor<'de> for JsonValue<'a> {
107103 where
108104 E : de:: Error ,
109105 {
110-
111- Ok ( unsafe { pyo3:: ffi:: PyUnicode_FromStringAndSize ( value. as_ptr ( ) as * const c_char , value. len ( ) as pyo3:: ffi:: Py_ssize_t ) } )
106+ Ok ( unsafe {
107+ pyo3:: ffi:: PyUnicode_FromStringAndSize (
108+ value. as_ptr ( ) as * const c_char ,
109+ value. len ( ) as pyo3:: ffi:: Py_ssize_t ,
110+ )
111+ } )
112112 }
113113
114114 fn visit_str < E > ( self , value : & str ) -> Result < Self :: Value , E >
115115 where
116116 E : de:: Error ,
117117 {
118- Ok ( unsafe { pyo3:: ffi:: PyUnicode_FromStringAndSize ( value. as_ptr ( ) as * const c_char , value. len ( ) as pyo3:: ffi:: Py_ssize_t ) } )
118+ Ok ( unsafe {
119+ pyo3:: ffi:: PyUnicode_FromStringAndSize (
120+ value. as_ptr ( ) as * const c_char ,
121+ value. len ( ) as pyo3:: ffi:: Py_ssize_t ,
122+ )
123+ } )
119124 }
120125
121126 fn visit_seq < A > ( self , mut seq : A ) -> Result < Self :: Value , A :: Error >
@@ -139,11 +144,16 @@ impl<'de, 'a> Visitor<'de> for JsonValue<'a> {
139144 {
140145 let dict_ptr = PyDict :: new ( self . py ) . into_ptr ( ) ;
141146 while let Some ( ( key, value) ) = map. next_entry_seed ( PhantomData :: < Cow < str > > , self ) ? {
142- let _ = unsafe { pyo3:: ffi:: PyDict_SetItem (
143- dict_ptr,
144- pyo3:: ffi:: PyUnicode_FromStringAndSize ( key. as_ptr ( ) as * const c_char , key. len ( ) as pyo3:: ffi:: Py_ssize_t ) ,
145- value,
146- ) } ;
147+ let _ = unsafe {
148+ pyo3:: ffi:: PyDict_SetItem (
149+ dict_ptr,
150+ pyo3:: ffi:: PyUnicode_FromStringAndSize (
151+ key. as_ptr ( ) as * const c_char ,
152+ key. len ( ) as pyo3:: ffi:: Py_ssize_t ,
153+ ) ,
154+ value,
155+ )
156+ } ;
147157 }
148158 Ok ( dict_ptr)
149159 }
0 commit comments