aviate-labs / principal.mo

Package that allows you to create a Principal from a Blob.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Principal

Provides a wrapper around the base principal module.

Usage

You can add the package with vessel.

Principals

Functions

  • fromText: creates a principal from its textual representation.

  • toText: converts a principal to its textual representation.

  • fromBlob (NEW): creates a principal from its binary representation.

  • toBlob: converts a principal to its binary representation.

Account Identifiers

It is recommended to use the blob subpackage if you do not need random access or mutation.

Example

let accountId = AccountIdentifier.fromPrincipal(p, null);
let aIdText   = AccountIdentifier.toText(ab);
assert(Hex.equal(aIdText, "a7218db708c35689495871c3c6860504503ab2a545630809dd8609130331b0c2"));

Text vs. [Nat8] vs. Blob

  1. Text is case-sensitive, if you choose to use it, make use to use Hex.equal.
  2. [Nat8] has the same memory layout as other array, so is less compact as Blob.
  3. Blob is the best choice if you do not need to access the underlying bytes.

About

Package that allows you to create a Principal from a Blob.

License:Apache License 2.0


Languages

Language:Motoko 84.8%Language:Dhall 12.0%Language:Makefile 3.1%