namefully library

Welcome to namefully!

namefully is a Dart utility for handling person names.

Sources

Classes

Config
The Configuration to use across the other components.
FirstName
Representation of a first name with some extra functionality.
FullName
The core component of this utility.
LastName
Representation of a last name with some extra functionality.
Name
Representation of a string type name with some extra capabilities.
NameBuilder
An on-the-fly name builder.
NameDerivative
A name derivative builder.
Namefully
A helper for organizing person names in a particular order, way, or shape.
NameIndex
A fixed set of values to handle specific positions for list of names.
Parser<T>
A parser signature that helps to organize the names accordingly.

Enums

CapsRange
The range to use when capitalizing a string content.
Flat
The possible variants to indicate how to flatten a FullName.
NameExceptionType
The Exception types supported by Namefully.
NameOrder
The order of appearance of a FullName.
NameType
The types of name handled in this according the name standards.
Namon
The types of name handled in this utility according the name standards.
Separator
The token used to indicate how to split string values.
Surname
An option indicating how to format a surname.
Title
The abbreviation type to indicate whether or not to add period to a prefix using the American or British way.

Typedefs

Callback<P, R> = R Function(P param)
A convenient callback function receiving a Param and Returning a value.
VoidCallback = void Function()
A convenient void callback function definition.

Exceptions / Errors

InputException
An exception thrown when a name source input is incorrect.
NameException
Base class for all name-related exceptions.
NotAllowedException
Thrown by not allowed operations such as in NameBuilder or name formatting.
UnknownException
A fallback exception thrown by any unknown sources or unexpected failure that are not NameExceptions.
ValidationException
An exception thrown to indicate that a name fails the validation rules.