Skip to main content

Crate nv_redfish_csdl_compiler

Crate nv_redfish_csdl_compiler 

Source
Expand description

CSDL/Redfish schema compiler and code generator

This crate parses EDMX/CSDL documents and compiles them into a stable intermediate representation, then generates ergonomic Rust code for Redfish-based APIs.

At a glance

  • Parse: read one or more EDMX documents (edmx)
  • Compile: resolve types, properties, actions, and annotations into Compiled (compiler); optionally optimize the set (optimizer)
  • Generate: produce Rust modules and types (generator)

Key features

  • Understands OData annotations (permissions, insert/update/delete)
  • Handles Redfish specifics (required flags, settings, actions)
  • Supports selective compilation via patterns and root singletons
  • Deterministic output designed for straightforward codegen

Modules§

commands
High-level compiler commands. Command-line entry points for the compiler
compiler
Redfish schema compiler. Schema compiler pipeline
edmx
Entity Data Model XML definitions. EDMX parser and validator.
error
Compiler errors.
features_manifest
Features manifest. Features manifest
generator
Redfish code generator.
odata
OData-related utilities. OData helpers to work with edmx
one_or_collection
Type or a collection of a type.
optimizer
Optimizer for compiled data structures. This is collection of optimizations of compiled data structures. Each submodule of this module contains one or more optimizations combinded by same topic.
redfish
Redfish-specific utilities. Redfish helpers to work with edmx

Enums§

Error
CSDL Compiler errors.
OneOrCollection
One item or collection of items for types.

Type Aliases§

IsAbstract
Whether a type is abstract.
IsExcerptCopyOnly
Whether an attribute appears only in excerpt copies of resource.
IsNullable
Whether an attribute is nullable.
IsRequired
Whether an attribute is required.
IsRequiredOnCreate
Whether an attribute is required when an object is created.