Fix to json for SQLite databases (#8343)

Fixes #8341. 

The `CustomValue::to_json()` function is an odd duck; it defaults to
returning `null`, and no `CustomValue` implementations override it to do
anything useful. I forgot to implement `to_json()` for `SQLiteDatabase`,
so `open foo.db | to json` was returning `null`.

To fix this, I've removed `CustomValue::to_json()` and now `to json`
will collect a `CustomValue` into a regular `Value` before doing a JSON
conversion.
This commit is contained in:
Reilly Wood
2023-03-06 14:36:26 -08:00
committed by GitHub
parent 454d1a995c
commit e445c41454
7 changed files with 4 additions and 26 deletions

View File

@ -33,10 +33,6 @@ impl CustomValue for NuDataFrame {
Ok(Value::List { vals, span })
}
fn to_json(&self) -> nu_json::Value {
nu_json::Value::Null
}
fn as_any(&self) -> &dyn std::any::Any {
self
}

View File

@ -34,10 +34,6 @@ impl CustomValue for NuExpression {
Ok(self.to_value(span))
}
fn to_json(&self) -> nu_json::Value {
nu_json::Value::Null
}
fn as_any(&self) -> &dyn std::any::Any {
self
}

View File

@ -47,10 +47,6 @@ impl CustomValue for NuLazyFrame {
Ok(Value::Record { cols, vals, span })
}
fn to_json(&self) -> nu_json::Value {
nu_json::Value::Null
}
fn as_any(&self) -> &dyn std::any::Any {
self
}

View File

@ -38,10 +38,6 @@ impl CustomValue for NuLazyGroupBy {
Ok(Value::Record { cols, vals, span })
}
fn to_json(&self) -> nu_json::Value {
nu_json::Value::Null
}
fn as_any(&self) -> &dyn std::any::Any {
self
}

View File

@ -34,10 +34,6 @@ impl CustomValue for NuWhen {
Ok(value)
}
fn to_json(&self) -> nu_json::Value {
nu_json::Value::Null
}
fn as_any(&self) -> &dyn std::any::Any {
self
}