Encoding/Decoding module for urbit
Phonemic Base (Ship Names)
toPatp : Urbit.Encoding.Atom.Atom -> String
Try to convert an Atom into a @p encoded string, failing on negative numbers.
import Urbit.Encoding.Atom as Atom
Atom.fromInt 65536 |> Maybe.map toPatp
--> Just "~dapnep-ronmyl"
fromPatp : String -> Result (List Parser.DeadEnd) Urbit.Encoding.Atom.Atom
Try to convert a @p encoded string into an Atom, failing on improperly formatted strings.
import Urbit.Encoding.Atom as Atom
import BigInt
fromPatp "~sampel-palnet"
|> Result.map (Atom.toBigInt >> BigInt.toString)
--> Ok "1624961343"
patpParser : Parser Urbit.Encoding.Atom.Atom
Parser for @p encoded strings.
Phonemic Base, Unscrambled
toPatq : Urbit.Encoding.Atom.Atom -> String
Try to convert an Atom into a @q encoded string, failing on negative numbers.
import Urbit.Encoding.Atom as Atom
Atom.fromInt 5 |> Maybe.map toPatq
--> Just "~per"
fromPatq : String -> Result (List Parser.DeadEnd) Urbit.Encoding.Atom.Atom
Try to convert a @q encoded string into an Atom, failing on improperly formatted strings.
import Urbit.Encoding.Atom as Atom
import BigInt
fromPatq "~sampel"
|> Result.map (Atom.toBigInt >> BigInt.toString)
--> Ok "1135"
patqParser : Parser Urbit.Encoding.Atom.Atom
Parser for @q encoded strings.