pub enum Person {
First,
Second,
Third,
}Expand description
Grammatical person (1st, 2nd, 3rd).
Person distinguishes the speaker (1st), the listener (2nd), and everyone else (3rd). This is one of the most universal grammatical categories, appearing in nearly all human languages.
§Examples by Language
| Person | English | Arabic | Spanish |
|---|---|---|---|
| 1st sg | I | أنا (ʾanā) | yo |
| 2nd sg | you | أنتَ (ʾanta) | tú |
| 3rd sg | he/she | هو/هي (huwa/hiya) | él/ella |
§Coreference Implications
Person is a hard constraint in coreference: “I went to the store. She bought milk” cannot have “I” and “She” coreferring (different persons).
Variants§
First
First person: the speaker(s)
English: “I”, “we”, “me”, “us”, “my”, “our” Arabic: أنا (ʾanā), نحن (naḥnu)
Second
Second person: the listener(s)
English: “you”, “your”, “yours” Arabic: أنتَ/أنتِ (ʾanta/ʾanti), أنتم (ʾantum)
Third
Third person: everyone else (default for zero pronouns)
English: “he”, “she”, “it”, “they”, “him”, “her”, “them” Arabic: هو (huwa), هي (hiya), هم (hum)
This is the default because most zero pronouns in narrative text refer to third-person entities.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Person
impl<'de> Deserialize<'de> for Person
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<Person, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<Person, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl Serialize for Person
impl Serialize for Person
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl Copy for Person
impl Eq for Person
impl StructuralPartialEq for Person
Auto Trait Implementations§
impl Freeze for Person
impl RefUnwindSafe for Person
impl Send for Person
impl Sync for Person
impl Unpin for Person
impl UnsafeUnpin for Person
impl UnwindSafe for Person
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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>
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>
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToCompactString for Twhere
T: Display,
impl<T> ToCompactString for Twhere
T: Display,
Source§fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
ToCompactString::to_compact_string() Read moreSource§fn to_compact_string(&self) -> CompactString
fn to_compact_string(&self) -> CompactString
CompactString. Read moreSource§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.