Module agnes::data_types[][src]

Structures, traits, and macros for managing the list of data types that agnes data structures support.

This module contains the heterogenous data structures for containing data, along with macros for automatically creating the structures for a specific data type list.

Modules

csv

Data type list for CSV files.

standard

A standard data type list for general basic use.

Structs

Cons

Buildling block of a heterogeneous type list.

Nil

The end of a heterogeneous type list.

StorageCons

Building block of a data storage list.

StorageNil

End of a data storage list;

Traits

AddVec

Trait for adding a data vector to the specified Target type.

Append

Trait for adding a new element to the end of a heterogeneous list.

AssocTypes

Trait used to provide associated types, used with a list of data types.

CreateStorage

Trait providing a method for creating a new empty storage structure

DTypeList

Marker type for commonly needed traits for DataType lists

DTypeSelector

A trait for finding the DType for a specified Target type. Typically, you would use the select_type_num inherent method on StorageCons instead.

DataType

Marker trait for types supported in this DataTypes set.

FieldLocator

Trait that provides details on the location of a field within a heterogeneous data storage structure.

FieldSerialize

Field serialization trait. Behaves similar to the serde::Serialize trait, but with extra specification of what data, exactly, is to be serialize.

Func

Trait for a function applied to a specified type T in DTypes. Used with the methods map and tmap in the DataView struct.

FuncExt

Trait for a function applied to a specified type T in DTypes. Used with the method map_ext in the DataView struct. FuncExts are similar to Funcs except they also provide information about the type / location in storage field the FuncExt was called upon.

FuncPartial

Trait for a function operating over all types present in a list of data types.

GetDType

Trait that provides access to a DType. Implemented by data types within DTypes to provide run-time access to the data type.

Map

Trait providing a method for applying a Func to data in data storage structure. Implemented automatically by data_types macros where a Func is implemented for all data types of a data storage structure.

MapExt

Trait providing a method for applying a FuncExt to data in data storage structure. Implemented automatically by data_types macros where a FuncExt is implemented for all data types of a data storage structure.

MapPartial

Trait providing a method for applying a FuncPartial to data in data storage structure. Implemented automatically by data_types macros.

MaxLen

Trait that provides a method for returning the maximum length of a field in a heterogeneous storage structure.

Prepend

Trait for adding a new element to the front of a heterogeneous list.

Serializable

Marker trait for a data storage structure that implements FieldSerialize

TMap

Trait providing a method for applying a Func to data in data storage structure. Implemented automatically by data_types macros where a Func is implemented for type T.

TypeSelector

A trait for selecting all fields of Target type from storage. Typically, you would use the select_type and select_type_mut inherent methods on StorageCons instead.

Functions

cons

Helper function to construct a Cons list.

Type Definitions

DTypeCons

Building block of a type list.

DTypeNil

End of a data type list.

TypeData

Type alias for a data structure containing all of the FieldData structures for a single data type.