Expand description
Cross-backend path and identifier operations.
Holds primitives shared by catalog backends: separator normalization, local
path to URI conversion, object-store path constructors, identifier
sanitization, and persistence-owned type-to-prefix traits for
streaming/session writers. Backend-specific catalog paths are mapped in
crate::catalog::types.
All path splitting in this module normalizes Windows \ separators first,
so parsing behaves identically on every platform. Call sites must use these
helpers instead of splitting raw paths on /.
Traits§
- Catalog
Path Prefix - Persistence-owned static path prefix used by streaming/session writers.
Functions§
- extract_
identifier_ from_ path - Extracts the identifier from a file path: typically the second-to-last path component.
- extract_
path_ components - Extracts path components using platform-appropriate path parsing.
- local_
to_ object_ store_ path - Converts a local
PathBufto an object store path string. - make_
object_ store_ path - Joins a base path and components into an object-store path with forward slashes.
- make_
sql_ safe_ identifier - Makes an identifier safe for use in SQL table names.
- normalize_
path_ separators - Normalizes Windows
\separators to/. - normalize_
path_ to_ uri - Normalizes a path to URI format for consistent object store usage.
- safe_
directory_ identifier - Normalizes a user-supplied identifier for use in directory paths.
- urisafe_
instrument_ id - Converts an instrument ID to a URI-safe format by removing forward slashes and replacing carets with underscores. Some instrument IDs contain forward slashes (e.g., “BTC/USD”) which are not suitable for use in file paths.