#[non_exhaustive]pub enum Processing {
AuthorDate,
AuthorDateGivenname,
AuthorDateNames,
AuthorDateFull,
Numeric,
Note,
Label(LabelConfig),
Custom(ProcessingCustom),
}Expand description
Processing mode for citation/bibliography generation.
Determines how citations and bibliographies are sorted, grouped, and disambiguated. Can be specified as a simple string or with complex configuration maps:
- A string:
"author-date","author-date-full","numeric","note", or"label" - A label config map:
{ label: { preset: din } } - A custom config map:
{ sort: ..., group: ..., disambiguate: ... }
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
AuthorDate
Author-date styles (e.g., APA, Chicago). Default bibliography ordering: author, year, title; disambiguates by year suffix.
AuthorDateGivenname
Author-date styles that also add given names during disambiguation.
AuthorDateNames
Author-date styles that also expand name lists during disambiguation.
AuthorDateFull
Author-date styles that expand name lists and add given names during disambiguation.
Numeric
Numeric styles (e.g., IEEE, Nature). Do not imply a bibliography sort; citations are numbered in order of appearance.
Note
Note styles (e.g., Chicago Notes-Bibliography). With a bibliography default to author, title, year ordering.
Label(LabelConfig)
Label styles (e.g., Alpha, DIN 1505-2). Default bibliography ordering: author, year, title.
Custom(ProcessingCustom)
Fully custom processing behavior.
Explicit sort configuration remains authoritative.
Implementations§
Source§impl Processing
impl Processing
Sourcepub fn default_bibliography_sort(&self) -> Option<SortPreset>
pub fn default_bibliography_sort(&self) -> Option<SortPreset>
Default bibliography sort for the processing family, if any.
Returns the standard bibliography sort order for the processing mode:
AuthorDate/Label: author, year, titleNote: author, title, yearNumeric: None (no automatic sort)Custom: the base preset’s default when abaseis set and no explicitsortoverrides it; otherwise None (an explicit custom sort resolves throughconfig()instead, keeping the entry-ID tiebreak)
Returns true for all author-date family variants.
A Custom delta whose base is an author-date preset counts as
author-date: a delta on author-date is still an author-date style.
Centralizes the author-date family check so new variants don’t require
updating scattered matches! blocks across the codebase.
Sourcepub fn regime_family(&self) -> RegimeFamily
pub fn regime_family(&self) -> RegimeFamily
Coarse citation regime family for cross-regime compatibility checks.
Used during style inheritance to determine whether an inherited parent’s citation-mode sub-specs (integral, non-integral) belong to a different regime and should be reset when the child supplies its own base template.
A base-less Custom is its own family and never triggers automatic
sub-spec resets, preserving fully-custom authored styles. A Custom
delta with a base belongs to its base’s family: a delta on
author-date is still an author-date style.
See docs/specs/CITATION_REGIME.md for the full invariant.
Sourcepub fn default_citation_sort_policy(&self) -> CitationSortPolicy
pub fn default_citation_sort_policy(&self) -> CitationSortPolicy
Citation sorting remains explicit-only for all processing families.
All processing modes use ExplicitOnly, meaning citation clusters are only
reordered when explicitly configured via citation.sort.
Sourcepub fn config(&self) -> ProcessingCustom
pub fn config(&self) -> ProcessingCustom
Get the effective bibliography/disambiguation configuration for this processing mode.
Returns a ProcessingCustom struct with the resolved configuration combining
preset defaults and user overrides. For Custom mode, returns the user-provided config as-is.
Trait Implementations§
Source§impl Clone for Processing
impl Clone for Processing
Source§fn clone(&self) -> Processing
fn clone(&self) -> Processing
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more