use crate::{
describe::DocComments, exception::PhpResult, flags::DataType, flags::PropertyFlags, types::Zval,
};
pub struct PropertyDescriptor<T: 'static> {
pub name: &'static str,
pub mangled_name: &'static str,
pub get: Option<fn(&T, &mut Zval) -> PhpResult>,
pub set: Option<fn(&mut T, &Zval) -> PhpResult>,
pub flags: PropertyFlags,
pub docs: DocComments,
pub ty: DataType,
pub nullable: bool,
pub readonly: bool,
}
const _: () = assert!(
std::mem::size_of::<PropertyDescriptor<()>>() <= 12 * std::mem::size_of::<usize>(),
"PropertyDescriptor grew beyond expected size"
);