Crate lb_rs

Source
Expand description

The library that underlies most things lockbook.

All lockbook clients (iOS, linux, etc) rely on this library to perform cryptography, offline edits, and reconciliation of data between our server, other clients, and other devices.

Our server relies on this library for checking signatures, and validating whether tree modifications are valid / authorized.

  • Most clients / integrators will be interested in the functions attached to the Lb struct. See the service module for evolving this functionality.

  • The model module contains the specification of our data structures and contracts between components.

  • The logic module contains our important algorithms and routines.

  • The "blocking" feature flag enables the blocking module and and the corresponding blocking Lb variant.

  • The "ffi" feature flag enables blocking as well as an API for C ffi clients

  • The "jni" feature flag enables blocking as well as an API for JVM clients

Modules§

blocking
logic
model
repo
service
Members of this module comprise the endpoints exposed by the lb crate Members of this module are generally handling concurrency primitives, caches, and pay special attention to the needs of people consuming lb - UI developers and integration engineers. On locking: in general, it is okay to hold a lock for reading a file, but not for multiple files or network I/O
svg
text

Macros§

unexpected_only

Structs§

Lb
Uuid
A Universally Unique Identifier (UUID).

Statics§

CORE_CODE_VERSION
DEFAULT_API_LOCATION

Functions§

get_code_version