pub struct PersonName {
pub raw: String,
pub first: String,
pub von: String,
pub last: String,
pub jr: String,
pub given: Vec<String>,
pub family: Vec<String>,
pub prefix: Vec<String>,
pub suffix: Vec<String>,
pub literal: Option<String>,
}Expand description
A structured BibTeX person name.
BibTeX supports the forms First von Last, von Last, First, and
von Last, Jr, First. This type keeps those four logical parts separate
while preserving the exact token text from the source value.
Fields§
§raw: StringExact source text for this name segment, trimmed of surrounding whitespace.
first: StringGiven names and initials.
von: StringLowercase particles such as von, van, de, or der.
last: StringFamily name.
jr: StringJunior part such as Jr. in Last, Jr., First.
given: Vec<String>Given-name tokens.
family: Vec<String>Family-name tokens.
prefix: Vec<String>Prefix or particle tokens.
suffix: Vec<String>Suffix tokens.
literal: Option<String>Literal organization or preserved braced name.
Implementations§
Source§impl PersonName
impl PersonName
Sourcepub fn display_name(&self) -> String
pub fn display_name(&self) -> String
Return the display form used by most bibliography styles.
Sourcepub const fn is_literal(&self) -> bool
pub const fn is_literal(&self) -> bool
Return true when the name is a braced literal or organization name.
Sourcepub fn unicode_display_name(&self) -> String
pub fn unicode_display_name(&self) -> String
Return the display name after LaTeX-to-Unicode conversion.
Trait Implementations§
Source§impl Clone for PersonName
impl Clone for PersonName
Source§fn clone(&self) -> PersonName
fn clone(&self) -> PersonName
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PersonName
impl Debug for PersonName
Source§impl PartialEq for PersonName
impl PartialEq for PersonName
Source§fn eq(&self, other: &PersonName) -> bool
fn eq(&self, other: &PersonName) -> bool
Tests for
self and other values to be equal, and is used by ==.impl Eq for PersonName
impl StructuralPartialEq for PersonName
Auto Trait Implementations§
impl Freeze for PersonName
impl RefUnwindSafe for PersonName
impl Send for PersonName
impl Sync for PersonName
impl Unpin for PersonName
impl UnsafeUnpin for PersonName
impl UnwindSafe for PersonName
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more