1use crate::{Identifier, Literal, Type, Mutability};
2use crate::prelude::*;
3
4#[cfg(any(test, feature = "mocks"))]
5pub mod mock;
6
7#[derive(Debug, Default, PartialEq, Clone, Serialize, Deserialize)]
8pub struct Object {
10 pub mutability: Mutability,
12 pub identifier: Identifier,
14 pub type_: Type,
16 pub literal: Literal,
18}
19
20impl CountSymbols for Vec<Object> {
21 fn count_symbols(&self) -> usize {
22 self.len()
23 }
24}
25
26impl CountSymbols for &Vec<Object> {
27 fn count_symbols(&self) -> usize {
28 self.len()
29 }
30}