harmos_runtime/application.rs
1/* ***
2 *
3 * Harmos
4 *
5 * SPDX-License-Identifier: Apache-2.0
6 *
7 * ***
8 */
9
10/* === Modules === */
11
12/* === Re-Exports === */
13
14/* === Imports === */
15
16// Standard Library Imports
17
18// Third Party Imports
19
20// Local Imports
21
22/* === Constants === */
23
24/* === Macros === */
25
26/* === Type Aliases === */
27
28/* === Structs === */
29
30/* === Enums === */
31
32/* === Traits === */
33
34pub trait Application: Send + Sync + 'static {
35 type State: Send + Sync + 'static;
36
37 type Transaction: crate::state::Transaction<Self::State, Error: Send + Sync + 'static>
38 + crate::state::TransactionCatalog<Self::State>
39 + Send
40 + Sync
41 + 'static;
42
43 type Record: crate::state::RecordCatalog + Send + Sync + 'static;
44
45 type Streams: Send + Sync + 'static;
46
47 type Resources: Send + Sync + 'static;
48}
49
50/* === Implementations === */
51
52/* === Public Functions === */
53
54/* === Private Functions === */
55
56/* === Tests === */