parcel 0.2.2
Wrappable, wire-transferable C++23 value system with JSON serialization
Loading...
Searching...
No Matches
parcel.h
Go to the documentation of this file.
1#pragma once
2
12#include <parcel/builtins.h>
13#include <parcel/cell.h>
14#include <parcel/common.h>
15#include <parcel/commons.h>
16#include <parcel/defaults.h>
17#include <parcel/descriptor.h>
18#include <parcel/error.h>
19#include <parcel/format.h>
20#include <parcel/json_io.h>
21#include <parcel/list.h>
22#include <parcel/map.h>
23#include <parcel/primitive.h>
24#include <parcel/registry.h>
25#include <parcel/struct.h>
26#include <parcel/union.h>
27#include <parcel/version.h>
28#include <parcel/walk.h>
29
30#include <string_view>
31
32namespace parcel {
33
35inline constexpr std::string_view version = PARCEL_VERSION_STRING;
36
38inline constexpr int version_major = PARCEL_VERSION_MAJOR;
40inline constexpr int version_minor = PARCEL_VERSION_MINOR;
42inline constexpr int version_patch = PARCEL_VERSION_PATCH;
43
44} // namespace parcel
register_primitives / register_collections / register_typed_collections / register_std helpers.
Core ICell interface, cell_t handle, BaseCell CRTP base, and CellLike concept.
The shared vocabulary aliases re-exported from commons and the compile-time kind-id machinery.
Parcel cell adapters for the aurimasniekis/cpp-commons vocabulary types.
The default_cell_for<T> trait that drives FieldsBuilder field-type inference.
Runtime cell-type descriptors and the schema-graph mix-ins (IHasFields, ISubTypes).
ParcelError and the non-throwing surface that returns std::expected.
std::formatter specializations for parcel::ICell and parcel::cell_t.
Stream / byte-span JSON I/O for cells.
TypedListCell<T> and heterogeneous ListCell with their descriptors.
TypedMapCell<T> and heterogeneous MapCell with their descriptors.
constexpr int version_minor
Minor version component.
Definition parcel.h:40
constexpr int version_patch
Patch version component.
Definition parcel.h:42
constexpr int version_major
Major version component.
Definition parcel.h:38
constexpr std::string_view version
Library version as a dotted MAJOR.MINOR.PATCH string.
Definition parcel.h:35
PrimitiveCell<T> plus the per-storage PrimitiveTraits<T> specializations.
ParcelRegistry, Definition, and BuiltinsOptions for polymorphic dispatch.
StructCell CRTP base, FieldsBuilder, and the per-field descriptors.
UnionCell<Ts...> closed-set polymorphic cell and its descriptor.
std::generator-based walk over a cell tree.