Skip to content

Commit 4992761

Browse files
committed
[FIX] fix doc tests and refactor code in variant_to_json
1 parent 671c0b4 commit 4992761

File tree

2 files changed

+25
-13
lines changed

2 files changed

+25
-13
lines changed

parquet-variant/examples/variant_to_json.rs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -44,9 +44,6 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
4444
let escaped_json = variant_to_json_string(&special_string)?;
4545
println!(" Original: Line 1\\nLine 2\\tTabbed\\r\\nWith \"quotes\" and \\\\backslashes");
4646
println!(" JSON: {}", escaped_json);
47-
48-
// Example 3: Unicode support
49-
println!("\n🌍 3. Unicode Support:");
5047

5148
let unicode_variants = vec![
5249
Variant::String("Hello 世界 🌍"),

parquet-variant/src/encoder/json.rs

Lines changed: 25 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -39,11 +39,16 @@ use crate::variant::{Variant, VariantArray, VariantObject};
3939
///
4040
/// ```rust
4141
/// use parquet_variant::{Variant, variant_to_json};
42+
/// use arrow_schema::ArrowError;
4243
///
43-
/// let variant = Variant::Int8(42);
44-
/// let mut buffer = Vec::new();
45-
/// variant_to_json(&mut buffer, &variant)?;
46-
/// assert_eq!(String::from_utf8(buffer)?, "42");
44+
/// fn example() -> Result<(), ArrowError> {
45+
/// let variant = Variant::Int8(42);
46+
/// let mut buffer = Vec::new();
47+
/// variant_to_json(&mut buffer, &variant)?;
48+
/// assert_eq!(String::from_utf8(buffer).unwrap(), "42");
49+
/// Ok(())
50+
/// }
51+
/// example().unwrap();
4752
/// ```
4853
pub fn variant_to_json<W: Write>(
4954
json_buffer: &mut W,
@@ -144,10 +149,15 @@ fn convert_array_to_json<W: Write>(
144149
///
145150
/// ```rust
146151
/// use parquet_variant::{Variant, variant_to_json_string};
152+
/// use arrow_schema::ArrowError;
147153
///
148-
/// let variant = Variant::String("hello");
149-
/// let json = variant_to_json_string(&variant)?;
150-
/// assert_eq!(json, "\"hello\"");
154+
/// fn example() -> Result<(), ArrowError> {
155+
/// let variant = Variant::String("hello");
156+
/// let json = variant_to_json_string(&variant)?;
157+
/// assert_eq!(json, "\"hello\"");
158+
/// Ok(())
159+
/// }
160+
/// example().unwrap();
151161
/// ```
152162
pub fn variant_to_json_string(variant: &Variant) -> Result<String, ArrowError> {
153163
let mut buffer = Vec::new();
@@ -172,10 +182,15 @@ pub fn variant_to_json_string(variant: &Variant) -> Result<String, ArrowError> {
172182
/// ```rust
173183
/// use parquet_variant::{Variant, variant_to_json_value};
174184
/// use serde_json::Value;
185+
/// use arrow_schema::ArrowError;
175186
///
176-
/// let variant = Variant::Int8(42);
177-
/// let json_value = variant_to_json_value(&variant)?;
178-
/// assert_eq!(json_value, Value::Number(42.into()));
187+
/// fn example() -> Result<(), ArrowError> {
188+
/// let variant = Variant::Int8(42);
189+
/// let json_value = variant_to_json_value(&variant)?;
190+
/// assert_eq!(json_value, Value::Number(42.into()));
191+
/// Ok(())
192+
/// }
193+
/// example().unwrap();
179194
/// ```
180195
pub fn variant_to_json_value(variant: &Variant) -> Result<Value, ArrowError> {
181196
match variant {

0 commit comments

Comments
 (0)