Skip to main content

harmos_sdk/operations/
mod.rs

1/* ***
2 *
3 * Harmos
4 *
5 * SPDX-License-Identifier: Apache-2.0
6 *
7 * ***
8 */
9
10/* === Modules === */
11
12pub mod access;
13mod authored;
14mod calls;
15mod dependencies;
16pub mod instance;
17pub mod instances;
18pub mod lifecycle;
19mod operation;
20pub mod publication;
21pub mod registration;
22pub(crate) mod response;
23mod serving;
24
25#[cfg(feature = "streaming")]
26pub mod streaming;
27mod surface;
28
29/* === Re-Exports === */
30
31#[doc(hidden)]
32pub use authored::Carrier;
33pub use authored::{EndpointSet, Executable, InputEndpoint, OutputEndpoint};
34pub use calls::{CallFuture, Caller, Calls, InvocationError, Target};
35pub use dependencies::{AssignedOperation, Dependencies, ExecutionContext, OperationAssignments, ResourceError};
36pub use harmos_domain::operations::*;
37pub use instance::Instance;
38pub use operation::{Authored, Context, Dependent, Operation, Resource, Shape, Streams};
39pub use registration::{NativeInstance, OperationFactory, RegistrationBatch, ServiceFactory, ServiceInstance};
40pub use response::Response;
41pub use serving::{
42    CHILD_METHOD, ServingError, WIRE_METHOD, WireAnswer, WireChild, WireChildAction, WireChildCall, WireChildControl, WireCodecError,
43    WireCommand, WireTable, decode_prepared_grant, encode_prepared_grant,
44};
45
46#[cfg(feature = "streaming")]
47pub use serving::{WireEndpoints, WireStreamLimits, WireStreams};
48
49#[cfg(feature = "streaming")]
50pub use streaming::{Error as StreamError, StreamInput, StreamItem, StreamOutput, StreamPermit, StreamSettings, stream};
51pub use surface::{Host, RequestClaims};
52
53/* === Imports === */
54
55// Standard Library Imports
56
57// Third Party Imports
58
59// Local Imports
60
61/* === Constants === */
62
63/* === Macros === */
64
65/* === Type Aliases === */
66
67/* === Structs === */
68
69/* === Enums === */
70
71/* === Traits === */
72
73/* === Implementations === */
74
75/* === Public Functions === */
76
77/* === Private Functions === */
78
79/* === Tests === */