1#![no_std]
24#![forbid(unsafe_code)]
25
26extern crate alloc;
27
28#[cfg(test)]
30extern crate std;
31
32mod decimal;
33pub mod edit;
34pub mod error;
35pub mod facet;
36pub mod field;
37pub mod invariant;
38pub mod kind;
39pub mod model;
40pub mod node;
41pub mod profile;
42pub mod query;
43pub mod refs;
44mod resolve;
45pub mod snapshot;
46
47pub use edit::AstTransaction;
48pub use error::AstError;
49pub use facet::{
50 AppliedAnnotation, AppliedArgument, AutoId, ByteSpan, ComponentRole, CorbaFacet, CoreDxFacet,
51 DataRepresentationMask, Extensibility, Facets, FastDdsFacet, FlatDataFacet, HomeManages,
52 MacroExpansion, MemberIdAssignment, MemberIdOrigin, OpenDdsFacet, RangeConstraint,
53 RepositoryIdOrigin, Ros2Facet, RosBoundedOrigin, RosInterfaceRole, RtiFacet, SourceFacet,
54 SourceOrigin, StateVisibility, TemplateArg, TemplateParam, TemplateParamKind, TopicAnnotation,
55 TryConstruct, VendorFacets, VendorKind, VerbatimDirective, VerbatimPlacement, XTypesFacet,
56 XmlFacet,
57};
58pub const DEFAULT_EXTENSIBILITY: facet::Extensibility = facet::Extensibility::Appendable;
63
64pub const DEFAULT_BIT_BOUND: u16 = 32;
67
68pub use invariant::InvariantViolation;
69pub use kind::NodeKind;
70pub use model::{Ast, MemberSpec, primitive};
71pub use node::{
72 AnnotationDefNode, AnnotationMemberNode, AnyId, AttributeNode, BinaryOp, BitValueNode,
73 BitfieldNode, Bound, CaseLabel, CaseNode, CharWidth, Completeness, ConstExpr, ConstExprNode,
74 ConstNode, ConstValue, DomainNode, EndpointNode, EndpointRole, EnumeratorNode, EvalError,
75 ExceptionNode, InterfaceKind, InterfaceNode, LibraryNode, Literal, MemberNode, ModuleNode,
76 OperationNode, ParamDirection, ParamNode, ParticipantNode, PrimitiveKind, QosPolicy,
77 QosPolicyKind, QosProfileNode, TopicNode, TypeKind, TypeNode, UnaryOp, ValuetypeKind,
78};
79pub use profile::{
80 ConstructKind, FacetProperty, Profile, ProfileViolation, Verdict, construct_verdict,
81 facet_verdict,
82};
83pub use refs::{PendingSlot, RefKind};
84pub use resolve::ResolveReport;