#[macro_use]
extern crate pest_derive;
#[doc(hidden)]
macro_rules! try_seen_dyn {
($e:expr, $self:expr) => {
{
let ptr = (&$e as *const _) as usize;
let obj_ptr = (unsafe { *(ptr as *const usize) }, unsafe {
*(ptr as *const usize).offset(1)
});
match Reflector::seen_ptr($self, obj_ptr) {
Ok(v) => return v,
Err(meta) => meta,
}
}
}
}
mod tokens;
pub use crate::tokens::{Token, TokenKind, TokenVec};
pub mod deser;
#[doc(inline)]
pub use crate::deser::Deser;
#[macro_use]
mod reflector;
pub use crate::reflector::Reflector;
pub mod access;
#[doc(hidden)]
pub use crate::access::{
derive::{Enum, ReflectEnum, ReflectStruct, Struct, StructKind},
iter::ReflectIter,
Function,
};
#[doc(inline)]
pub use crate::access::{
deser_assign, Access, AssignError, CallError, ImmutAccess, MutAccess, Reflect, ReflectDirect,
ReflectIndirect, ReflectMut, RetValCallback,
};
#[doc(hidden)]
pub use interact_derive::derive_interact_extern_opqaue;
pub use interact_derive::Interact;
mod util;
pub use crate::assist::{Assist, NextOptions};
pub use crate::node_tree::{NodeInfo, NodeTree};
pub mod climber;
#[doc(inline)]
pub use crate::climber::{ClimbError, Climber};
#[doc(hidden)]
pub use crate::climber::{EnumOrStruct, EnumOrStructMut};
pub mod root;
#[doc(inline)]
pub use crate::root::{Root, RootLocal, RootSend};
use crate::expect::ExpectTree;
use crate::util::{assist, expect, node_tree};