NanoID-3.2.0: NanoID generator
Safe HaskellNone
LanguageHaskell2010

Data.NanoID

Synopsis

Documentation

data NanoID Source #

Constructors

NanoID 

Fields

Instances

Instances details
Eq NanoID Source # 
Instance details

Defined in Data.NanoID

Methods

(==) :: NanoID -> NanoID -> Bool #

(/=) :: NanoID -> NanoID -> Bool #

Show NanoID Source # 
Instance details

Defined in Data.NanoID

Generic NanoID Source # 
Instance details

Defined in Data.NanoID

Associated Types

type Rep NanoID :: Type -> Type #

Methods

from :: NanoID -> Rep NanoID x #

to :: Rep NanoID x -> NanoID #

ToJSON NanoID Source # 
Instance details

Defined in Data.NanoID

FromJSON NanoID Source # 
Instance details

Defined in Data.NanoID

Serialize NanoID Source # 
Instance details

Defined in Data.NanoID

type Rep NanoID Source # 
Instance details

Defined in Data.NanoID

type Rep NanoID = D1 ('MetaData "NanoID" "Data.NanoID" "NanoID-3.2.0-8J9v6bzOr46DRyAiU4s1r" 'False) (C1 ('MetaCons "NanoID" 'PrefixI 'True) (S1 ('MetaSel ('Just "unNanoID") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ByteString)))

newtype Alphabet Source #

Constructors

Alphabet 

Instances

Instances details
Eq Alphabet Source # 
Instance details

Defined in Data.NanoID

Show Alphabet Source # 
Instance details

Defined in Data.NanoID

toAlphabet :: String -> Alphabet Source #

Create a new Alphabet from a string of symbols of your choice

nanoID :: GenIO -> IO NanoID Source #

Standard NanoID generator function

λ: g <- createSystemRandom
λ: nanoID g
x2f8yFadIm-Vp14ByJ8R3

customNanoID Source #

Arguments

:: Alphabet

An Alphabet of your choice

-> Length

A NanoID length (the standard length is 21 chars)

-> GenIO

The pseudo-random number generator state

-> IO NanoID 

Customable NanoID generator function

defaultAlphabet :: Alphabet Source #

The default Alphabet, made of URL-friendly symbols.

Some predefined Alphabets, borrowed from https://github.com/CyberAP/nanoid-dictionary