Expand description
§scsys-core
Welcome the the scsys-core` crate, the foundational library for the scsys.io ecosystem. This crate is primarily focused on establish a set of fundamental types, traits, and utilities that are used throughout the ecosystem. Doing so allows for a natural consistency to emerge across the ecosystem, while further streamlining the development process.
That being said, the general focus of the crate and its feature-gating make it ideally suited for use outside of the ecosystem as well providing useful primitives such as:
- Id- a generic identifier type
Re-exports§
- pub use rand;
- pub use rand_distr;
Modules§
- cont
- this module implements a set of traits and utilities for working with containers this module is focused on defining a set of traits and types for abstracting the behaviourds of an entity capable of storing some data.
- error
- this module implements various error-handling primitives and utilities ths module implements various error-handling primitives and utilities
- id
- this module defines the generic Idwrapper and its implementations This module focuses on theIdimplementation, a generic wrapper type used to define various identifiers. TheIdtype is equipped with additional methods and traits to facilitate the creation and management of identifiers in a type-safe manner.
- state
- The statemodule provides various abstractions and implementations for working with states within Rust.
- time
- The timemodule focuses on implementing various time-related features and utilities. It provides a genericTimestampalong with supporting traits and types to facilitate time management.
- types
Macros§
- fmt_wrapper Deprecated 
- Example
- get_field 
- gsw
- The gswmacro generates getter and setter methods for the fields of a struct. At the moment, the macro can handle any type; for types that implement theCopytrait, simply drop the&to the left of each type.
- wrapper
Structs§
- Id
- Idis a generic identifier type that wraps a value of type- T.
- LinearDirection Iter 
- An iterator over the variants of LinearDirection
- StageIter 
- An iterator over the variants of Stage
- State
- Stateis generic over some type- Qthat implements the- RawStatetrait.
- StateBase 
- StateBaseis an abstract object that allows a particular kind of state to be associated with some generic state- Q
- Timestamp
- Timestampis a generic implementation of a type that represents some point in time.
Enums§
- Error
- EventStage 
- An EventStageis a generic enumeration that represents the three stages of an event in a system, allowing for the association of a typeTwith each stage. The stages are:
- LinearDirection 
- The LinearDirectionimplementation enumerates the three pssoible movements in one-dimensional space, namely:
- Stage
Traits§
- Now
- The Nowtrait provides a common creation routines for all datetime implementations.
- RawTimestamp
- A marker trait indicating types capable of representing a raw timestamp value.
- StateRepr 
- The StateReprtrait defines the base type for stateful items, allowing for a generic item type to be associated with the state.
- Stateful
- Statefulis a trait establishing a common interface for all types that are state-aware.