1#![cfg_attr(coverage_nightly, feature(coverage_attribute))]
2
3pub mod contract;
4pub mod descriptor;
5pub mod error;
6pub mod grpc_repr;
7pub mod ir;
8pub mod policy;
9pub mod query;
10pub mod runtime;
11pub mod wiring;
12
13#[cfg(feature = "grpc-client")]
14pub mod grpc;
15
16pub use contract::{Contract, ServiceContract};
17pub use descriptor::{ContractDescriptor, ContractKind, MethodDescriptor, ServiceDescriptor};
18pub use error::ContractError;
19pub use grpc_repr::{
20 GrpcRepr, GrpcReprScalar, MissingRequiredMessage, ProtoDecodeError, SecurityContextMarker,
21 TryFromProto, UnknownEnumDiscriminant, ViaStringParseError, assert_security_context,
22};
23pub use ir::{
24 ContractIr, FieldIr, FieldRole, GrpcBindingIr, GrpcIdempotency, GrpcMethodBindingIr,
25 HttpBindingIr, HttpFieldBinding, HttpMethod, HttpMethodBindingIr, Idempotency, InputShape,
26 MethodIr, MethodKind, PrimitiveType, ServiceIr, StreamFraming, TypeRef, ValidationError,
27 validate_contract, validate_grpc_binding, validate_http_binding,
28};
29pub use policy::{Policy, PolicyContext, PolicyStack, TracingPolicy};
30pub use query::{QueryParamSpec, QueryParams, QueryScalar};
31pub use toolkit_contract_macros::{
32 ContractError, ProtoBridge, QueryParams, consumes, contract, grpc_contract, provides,
33 rest_contract,
34};
35pub use wiring::{ClientTuning, ClientWiring, ReconnectSettings, RetrySettings};
36
37#[doc(hidden)]
44pub use tracing as __tracing;
45
46#[cfg(feature = "canonical-errors")]
49pub use toolkit_canonical_errors::{Problem, ProblemCategory};