gleamunison/sync_types
Types
pub type PeerState {
PeerState(
last_seen: Int,
refs: set.Set(identity.DefinitionRef),
status: PeerStatus,
)
}
Constructors
-
PeerState( last_seen: Int, refs: set.Set(identity.DefinitionRef), status: PeerStatus, )
pub type PeerStatus {
Connected
Disconnected
Syncing
Failed(String)
}
Constructors
-
Connected -
Disconnected -
Syncing -
Failed(String)
pub type SyncError {
ConnectionFailed(PeerId, ConnectError)
TransferFailed(PeerId, message: String)
HashConflict(
PeerId,
ref: identity.DefinitionRef,
local: BitArray,
remote: BitArray,
)
}
Constructors
-
ConnectionFailed(PeerId, ConnectError) -
TransferFailed(PeerId, message: String) -
HashConflict( PeerId, ref: identity.DefinitionRef, local: BitArray, remote: BitArray, )
Values
pub fn sync_connect(node: String) -> Result(Nil, String)
pub fn sync_push_defs(
node: String,
defs: List(#(String, BitArray)),
) -> Result(Nil, String)
pub fn sync_receive_diff(
node: String,
) -> Result(List(String), String)
pub fn sync_request_defs(
node: String,
refs: List(String),
) -> Result(List(#(String, BitArray)), String)
pub fn sync_send_refs(
node: String,
refs: List(String),
) -> Result(Nil, String)