# Plurality v0.3.0 - Table of Contents

Ultra fast English pluralize and singularize noun inflection for Elixir. Convert plural to singular, singular to plural, and detect noun forms. Zero-regex, compile-time data, O(1) dispatch. Classical English mode available.

## Pages

- [Plurality](readme.md)

- Guides
  - [Classical Mode](classical-mode.md)
  - [Domain Customization](customization.md)
  - [Ash Integration](ash-integration.md)
  - [Performance](performance.md)
  - [Methodology: How Plurality Handles English Noun Inflection](methodology.md)
  - [Ambiguous Words](ambiguous-words.md)

- Changelog
  - [Changelog](changelog.md)

## Modules

- Core
  - [Plurality](Plurality.md): Fast, zero-regex English noun inflection for Elixir.
  - [Plurality.Custom](Plurality.Custom.md): Compile-time overrides for domain-specific inflection.

- Engine
  - [Plurality.Engine](Plurality.Engine.md): Three-tier resolution engine for English noun inflection.
  - [Plurality.Rules](Plurality.Rules.md): Suffix rule engine using last-byte dispatch for English noun inflection.
  - [Plurality.Style](Plurality.Style.md): Case and style preservation for inflected words.

- Ash Integration
  - [Plurality.Ash.Calculations.Pluralize](Plurality.Ash.Calculations.Pluralize.md): An `Ash.Resource.Calculation` that derives the plural form of an attribute.
  - [Plurality.Ash.Calculations.Singularize](Plurality.Ash.Calculations.Singularize.md): An `Ash.Resource.Calculation` that derives the singular form of an attribute.
  - [Plurality.Ash.Changes.Pluralize](Plurality.Ash.Changes.Pluralize.md): An `Ash.Resource.Change` that sets an attribute to the plural form of
another attribute.
  - [Plurality.Ash.Changes.Singularize](Plurality.Ash.Changes.Singularize.md): An `Ash.Resource.Change` that sets an attribute to the singular form of
another attribute.
  - [Plurality.Ash.Validations.PluralForm](Plurality.Ash.Validations.PluralForm.md): An `Ash.Resource.Validation` that ensures an attribute value is in plural form.
  - [Plurality.Ash.Validations.SingularForm](Plurality.Ash.Validations.SingularForm.md): An `Ash.Resource.Validation` that ensures an attribute value is in singular form.

