Skip to main content

Module generators

Module generators 

Source
Expand description

Code generation modules for FHIR types

This module contains specialized generators for different aspects of FHIR code generation:

  • struct_generator: Generate Rust structs from FHIR StructureDefinitions
  • trait_generator: Generate Rust traits for FHIR resources
  • enum_generator: Generate Rust enums from FHIR value sets
  • primitive_generator: Generate Rust primitives for FHIR primitive types
  • field_generator: Generate individual struct fields
  • documentation_generator: Generate documentation for generated types
  • nested_struct_generator: Generate nested structs within FHIR structures
  • file_generator: Handle file generation and organization
  • file_io_manager: Centralized file I/O operations and directory management
  • import_manager: Manage imports and dependencies
  • type_utilities: Utility functions for type classification and helpers

Re-exports§

pub use crate_generator::generate_crate_structure;
pub use crate_generator::parse_package_metadata;
pub use crate_generator::CrateGenerationParams;
pub use documentation_generator::DocumentationGenerator;
pub use enum_generator::EnumGenerator;
pub use existence_trait_generator::ExistenceTraitGenerator;
pub use field_generator::FieldGenerator;
pub use file_generator::FileGenerator;
pub use file_io_manager::FileIoManager;
pub use import_manager::ImportManager;
pub use invariant_generator::InvariantGenerator;
pub use metadata_generator::build_metadata_registry;
pub use metadata_generator::generate_metadata_code;
pub use mutator_trait_generator::MutatorTraitGenerator;
pub use naming_manager::NamingManager;
pub use nested_struct_generator::NestedStructGenerator;
pub use primitive_generator::PrimitiveGenerator;
pub use struct_generator::StructGenerator;
pub use token_generator::TokenGenerator;
pub use trait_generator::TraitGenerator;
pub use trait_impl_generator::TraitImplGenerator;
pub use type_registry::TypeRegistry;
pub use type_utilities::TypeUtilities;
pub use utils::GeneratorUtils;
pub use validation_trait_generator::ValidationTraitGenerator;

Modules§

accessor_trait_generator
Generator for accessor traits.
binding_generator
Binding constant generation
cardinality_generator
Cardinality constant generation
crate_generator
FHIR Crate Generation
documentation_generator
Documentation generation utilities for FHIR types
enum_generator
Enum generation functionality
existence_trait_generator
field_generator
Field generation functionality for FHIR types
file_generator
File generation and organization functionality
file_io_manager
File I/O operations for FHIR code generation
import_manager
Import management utilities
invariant_generator
Invariant constant generation
metadata_generator
Metadata generation for FHIR types
mutator_trait_generator
Generator for mutator traits.
naming_manager
Centralized naming management for FHIR types and modules
nested_struct_generator
Nested struct generation functionality for FHIR BackboneElements
primitive_generator
Primitive type generation functionality
struct_generator
Struct generation functionality
token_generator
Token generation utilities for Rust code emission
trait_generator
Trait generation functionality
trait_impl_generator
Trait implementation generation functionality
type_registry
Type registry for tracking FHIR type classifications
type_utilities
Type classification and utility functions for FHIR code generation
utils
Utility functions for code generation
validation_trait_generator
Validation trait generation