pub struct AccountId(_);
Expand description
Account identifier. This is the human readable utf8 string which is used internally to index accounts on the network and their respective state.
Because these IDs have to be validated, they have to be converted from a string
with FromStr
or TryFrom
a compatible type. To skip validation on initialization,
AccountId::new_unchecked
can be used.
Examples
use near_sdk::AccountId;
use std::convert::{TryFrom, TryInto};
// `FromStr` conversion
let alice: AccountId = "alice.near".parse().unwrap();
assert!("invalid.".parse::<AccountId>().is_err());
let alice_string = "alice".to_string();
// From string with validation
let alice = AccountId::try_from(alice_string.clone()).unwrap();
let alice: AccountId = alice_string.try_into().unwrap();
// Initialize without validating
let alice_unchecked = AccountId::new_unchecked("alice".to_string());
assert_eq!(alice, alice_unchecked);
Implementations
sourceimpl AccountId
impl AccountId
sourcepub fn as_bytes(&self) -> &[u8]ⓘNotable traits for &mut [u8]impl Write for &mut [u8]impl Read for &[u8]
pub fn as_bytes(&self) -> &[u8]ⓘNotable traits for &mut [u8]impl Write for &mut [u8]impl Read for &[u8]
Returns reference to the account ID bytes.
sourcepub fn new_unchecked(id: String) -> Self
pub fn new_unchecked(id: String) -> Self
Caller must ensure that the account id is valid.
For more information, read: https://docs.near.org/docs/concepts/account#account-id-rules
Trait Implementations
sourceimpl BorshDeserialize for AccountId
impl BorshDeserialize for AccountId
sourcefn deserialize(buf: &mut &[u8]) -> Result<Self>
fn deserialize(buf: &mut &[u8]) -> Result<Self>
Deserializes this instance from a given slice of bytes.
Updates the buffer to point at the remaining bytes. Read more
sourcefn try_from_slice(v: &[u8]) -> Result<Self, Error>
fn try_from_slice(v: &[u8]) -> Result<Self, Error>
Deserialize this instance from a slice of bytes.
sourceimpl BorshSchema for AccountIdwhere
String: BorshSchema,
impl BorshSchema for AccountIdwhere
String: BorshSchema,
sourcefn declaration() -> Declaration
fn declaration() -> Declaration
Get the name of the type without brackets.
sourcefn add_definitions_recursively(
definitions: &mut HashMap<Declaration, Definition>
)
fn add_definitions_recursively(
definitions: &mut HashMap<Declaration, Definition>
)
Recursively, using DFS, add type definitions required for this type. For primitive types
this is an empty map. Type definition explains how to serialize/deserialize a type. Read more
sourcefn add_definition(
declaration: String,
definition: Definition,
definitions: &mut HashMap<String, Definition, RandomState>
)
fn add_definition(
declaration: String,
definition: Definition,
definitions: &mut HashMap<String, Definition, RandomState>
)
Helper method to add a single type definition to the map.
fn schema_container() -> BorshSchemaContainer
sourceimpl BorshSerialize for AccountId
impl BorshSerialize for AccountId
sourceimpl<'de> Deserialize<'de> for AccountId
impl<'de> Deserialize<'de> for AccountId
sourcefn deserialize<D>(
deserializer: D
) -> Result<Self, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>(
deserializer: D
) -> Result<Self, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
sourceimpl JsonSchema for AccountId
impl JsonSchema for AccountId
sourcefn schema_name() -> String
fn schema_name() -> String
The name of the generated JSON Schema. Read more
sourcefn json_schema(gen: &mut SchemaGenerator) -> Schema
fn json_schema(gen: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
sourcefn is_referenceable() -> bool
fn is_referenceable() -> bool
Whether JSON Schemas generated for this type should be re-used where possible using the
$ref
keyword. Read moresourceimpl Ord for AccountId
impl Ord for AccountId
1.21.0 · sourcefn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
1.21.0 · sourcefn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the minimum of two values. Read more
1.50.0 · sourcefn clamp(self, min: Self, max: Self) -> Selfwhere
Self: Sized + PartialOrd<Self>,
fn clamp(self, min: Self, max: Self) -> Selfwhere
Self: Sized + PartialOrd<Self>,
Restrict a value to a certain interval. Read more
sourceimpl PartialOrd<AccountId> for AccountId
impl PartialOrd<AccountId> for AccountId
sourcefn partial_cmp(&self, other: &AccountId) -> Option<Ordering>
fn partial_cmp(&self, other: &AccountId) -> Option<Ordering>
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moreimpl Eq for AccountId
impl StructuralEq for AccountId
impl StructuralPartialEq for AccountId
Auto Trait Implementations
impl RefUnwindSafe for AccountId
impl Send for AccountId
impl Sync for AccountId
impl Unpin for AccountId
impl UnwindSafe for AccountId
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more