//! Structure AST: the shape of a competitive-programming input format.
//!
//! The structure tree stores nodes in an arena and refers to them by
//! [`crate::structure::NodeId`]. Use [`crate::structure::StructureAst`] for
//! storage, [`crate::structure::NodeKind`] for shape, and
//! [`crate::structure::Reference`] when constraints or expressions need to
//! point at nodes.
/// Stable structure node identifier type.
/// Structure node variants.
/// References to nodes or unresolved names.
/// Arena-backed structure storage.
/// Individual structure node wrapper.
/// Visitor API for tree inspection.
/// Identifiers, literals, and node-kind hints.
pub use NodeId;
pub use NodeKind;
pub use Reference;
pub use StructureAst;
pub use StructureNode;
pub use ;
pub use ;