Skip to main content

laser_wire/
lib.rs

1#![forbid(unsafe_code)]
2
3pub mod agent;
4pub mod agent_workflow;
5pub mod authz;
6pub mod batch;
7pub mod browse;
8pub mod change;
9pub mod clients;
10pub mod codes;
11pub mod commands;
12pub mod content;
13pub mod control;
14pub(crate) mod encoding;
15pub mod error;
16pub mod fork;
17pub mod forward;
18pub mod graph;
19pub mod hashing;
20pub mod headers;
21pub mod hello;
22pub mod http;
23pub mod keys;
24pub mod kv;
25pub mod limits;
26pub mod memory;
27pub mod mutation;
28pub mod query;
29pub mod result;
30pub mod snapshot;
31pub mod topics;
32pub mod topology;
33pub mod validate;
34
35#[cfg(feature = "codecs")]
36pub mod codecs;
37#[cfg(feature = "fixtures")]
38pub mod fixtures;
39#[cfg(feature = "cbor")]
40pub mod framing;
41#[cfg(feature = "http-client")]
42pub mod http_client;
43
44pub mod prelude {
45    pub use crate::agent::{
46        AgentDeadLetter, AgentEnvelope, AgentErrorBody, AgentErrorCode, AgentId, AgentKind,
47        ChannelId, ConversationId, CorrelationId, DeadLetterReason, IdempotencyKey, LogPosition,
48        RecordId, TaskState, TokenUsage,
49    };
50    pub use crate::authz::{
51        Action, AuthzError, AuthzReply, Effect, Feature, Grant, ResourceKind, ResourcePattern,
52        Role, RoleBinding,
53    };
54    pub use crate::browse::{BrowseOutcome, BrowseReply, ProjectionInfo, SchemaInfo};
55    pub use crate::content::ContentType;
56    pub use crate::control::{
57        ControlCommand, ControlEnvelope, Delivery, EdgeExtract, EntitySchema, FieldType,
58        IndexField, IndexSchema, NodeExtract, Projection, ProjectionBinding, ProjectionId,
59        ProjectionKind, RetentionPolicy, SchemaDef, SchemaSource, SourceSelector, Target,
60        TargetRole,
61    };
62    pub use crate::error::{DecodeError, InvalidError};
63    pub use crate::fork::{ForkError, ForkInfo, ForkKind, ForkOutcome, ForkReply, ForkStatus};
64    pub use crate::graph::{
65        EdgeDir, EdgeId, GraphEdge, GraphError, GraphNeighbors, GraphNode, GraphQuery, GraphReply,
66        GraphResult, GraphReturn, GraphStart, GraphUpsert, Hop, NodeId, Path,
67    };
68    pub use crate::hello::{HelloReply, OpVersions};
69    pub use crate::keys::{KeyKind, KeyRecord};
70    pub use crate::kv::{
71        KvEntry, KvError, KvMetadata, KvNamespaceInfo, KvOutcome, KvPage, KvReply, MemoryRowScope,
72    };
73    pub use crate::query::{
74        AggCall, AggFunc, Aggregate, CmpOp, Consistency, Dir, Filter, KeyMatch, Page, Predicate,
75        Query, QueryEnvelope, QueryError, QueryReply, QueryResult, RawSql, Row, Select, Sort,
76        Value, VectorQuery, Window,
77    };
78    pub use crate::result::ResultCode;
79}