Crate sheetport_spec

Crate sheetport_spec 

Source
Expand description

SheetPort manifest specification types and helpers.

This crate defines the canonical data model for Formualizer I/O (FIO) manifests, provides serde serialization/deserialization, JSON Schema metadata, and validation helpers for authoring manifests that treat spreadsheets as pure input/output functions.

Structs§

Capabilities
Optional capabilities block for feature gating.
Constraints
Constraints applied to a port or field.
LayoutDescriptor
Manifest
Canonical manifest representation.
ManifestIssue
A single manifest validation issue with a JSON Pointer-like path.
ManifestMeta
Manifest metadata block.
Port
Port definition.
RangeSchema
RecordField
RecordSchema
ScalarSchema
SelectorA1
SelectorLayout
SelectorName
SelectorStructRef
SelectorTable
SpecVersion
Wrapper around semver::Version for serde compatibility.
TableColumn
TableSchema
TableSelector
Selector for an Excel table. Reserved in core-v0; requires full-v0 profile.
Units
Units metadata (extensible).
ValidationError
Aggregate validation error returned when one or more issues are detected.
WorkbookMeta
Optional workbook descriptors. These fields are advisory hints for runtimes and may be ignored unless a runtime explicitly documents support.

Enums§

Direction
Port direction.
FieldSelector
LayoutKind
Layout resolution behavior for layout selectors.
LayoutTermination
Profile
Conformance profile advertised by a manifest.
RangeKind
RecordKind
Schema
Schema union.
Selector
Selector union.
Shape
Port shape.
TableArea
TableKind
ValueType
Scalar value types.

Constants§

CRATE_VERSION
Version of this reference implementation crate.
CURRENT_SPEC_VERSION
Current supported FIO specification version.
SPEC_IDENT
Constant identifier for this spec.

Functions§

generate_schema_json_pretty
Generate the JSON Schema for Manifest using schemars at runtime.
generate_schema_value
Generate the JSON Schema as a serde_json::Value.
load_manifest_from_reader
Load a manifest from any reader implementing std::io::Read.
load_manifest_from_str
Load a manifest from a YAML string slice.
manifest_to_yaml
Serialize a manifest back to YAML, in a stable order.
schema_json
Returns the canonical JSON Schema (Draft 2019-09) for the current manifest version.