1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
use pest::iterators::Pairs;
use crate::{type_name::TypeName, type_name_parser::Rule, ParseError};
pub(crate) fn get_data_type(mut array_pairs: Pairs<'_, Rule>) -> Result<TypeName, ParseError> {
let data_type_pair = array_pairs
.next()
.ok_or(ParseError::Unknown)?
.into_inner()
.next()
.ok_or(ParseError::Unknown)?;
let data_type = TypeName::from_pair(data_type_pair)?;
Ok(data_type)
}