use crate::lexical::JsonLexicalConsumer;
use crate::lexical::JsonLexicalEvent;
use crate::value::internal::JsonValueMaterializationError;
use crate::value::internal::LexicalJsonValueBuilder;
pub(in crate::value::json_value_encoder) struct RawValueConsumer<'builder> {
pub(in crate::value::json_value_encoder) builder: &'builder mut LexicalJsonValueBuilder,
}
impl<'input> JsonLexicalConsumer<'input> for RawValueConsumer<'_> {
type Error = JsonValueMaterializationError;
fn before_value(&mut self, _: usize, _: usize) -> Result<(), Self::Error> {
Ok(())
}
fn before_key(&mut self, _: usize) -> Result<(), Self::Error> {
Ok(())
}
fn before_number(&mut self, _: &'input str, _: usize) -> Result<(), Self::Error> {
Ok(())
}
fn event(&mut self, event: JsonLexicalEvent<'input>) -> Result<(), Self::Error> {
self.builder.try_accept(event)
}
}