use crate::lex::token::normalization::utilities::{compute_bounding_box, extract_text};
use crate::lex::token::Token;
use std::ops::Range as ByteRange;
#[derive(Debug, Clone)]
pub(in crate::lex::building) struct DefinitionData {
pub subject_text: String,
pub subject_byte_range: ByteRange<usize>,
}
pub(in crate::lex::building) fn extract_definition_data(
tokens: Vec<(Token, ByteRange<usize>)>,
source: &str,
) -> DefinitionData {
let subject_byte_range = compute_bounding_box(&tokens);
let subject_text = extract_text(subject_byte_range.clone(), source);
DefinitionData {
subject_text,
subject_byte_range,
}
}