Module version

Source
Expand description

Version header parsing and management for AIM files

This module provides functionality for parsing and managing version headers in AIM files. AIM uses a two-component versioning system consisting of an epoch (major version) and an optional partial component (minor version) for tracking changes to workflows.

§Version Format

Version headers in AIM files follow the format [epoch] or [epoch:partial]:

  • [1] - Version with epoch 1 and implicit partial 0
  • [1:2] - Version with epoch 1 and partial 2
  • [ 123 ] - Version with epoch 123 and implicit partial 0 (whitespace allowed)

§Examples

use aimx::aim::Version;

// Create and manipulate versions
let mut version = Version::new(1, 0);
assert_eq!(version.epoch(), 1);
assert_eq!(version.partial(), 0);

version.increment_partial();
assert_eq!(version.partial(), 1);

version.increment_epoc();
assert_eq!(version.epoch(), 2);
assert_eq!(version.partial(), 0); // Reset to 0

Structs§

Version
Provides journal version support within the AIM file. The version header represents a version with an epoch and optional partial component.

Functions§

parse_version
Parses a version header from AIM markup format.