yarn-lock-0.4.0: Represent and parse yarn.lock files

MaintainerProfpatsch
Stabilityexperimental
Safe HaskellSafe
LanguageHaskell2010

Yarn.Lock.Types

Description

 

Synopsis

Documentation

type Lockfile = MKMap PackageKey Package Source #

Yarn lockfile.

It is a multi-keyed map (each value can be referenced by multiple keys). This is achieved by using an intermediate key ik.

Attention: Might be changed to a newtype in a future release.

lockfileIkProxy :: Proxy Int Source #

Proxy type for our MKMap intermediate key

data PackageKey Source #

Key that indexes package for a specific version.

Constructors

PackageKey 

Fields

  • name :: Text

    package name

  • npmVersionSpec :: Text

    tring that specifies the version of a package; sometimes a npm semver, sometimes an arbitrary string

data Keyed a Source #

Something with a list of PackageKeys pointing to it.

Constructors

Keyed (NonEmpty PackageKey) a 

Instances

Functor Keyed Source # 

Methods

fmap :: (a -> b) -> Keyed a -> Keyed b #

(<$) :: a -> Keyed b -> Keyed a #

Eq a => Eq (Keyed a) Source # 

Methods

(==) :: Keyed a -> Keyed a -> Bool #

(/=) :: Keyed a -> Keyed a -> Bool #

Ord a => Ord (Keyed a) Source # 

Methods

compare :: Keyed a -> Keyed a -> Ordering #

(<) :: Keyed a -> Keyed a -> Bool #

(<=) :: Keyed a -> Keyed a -> Bool #

(>) :: Keyed a -> Keyed a -> Bool #

(>=) :: Keyed a -> Keyed a -> Bool #

max :: Keyed a -> Keyed a -> Keyed a #

min :: Keyed a -> Keyed a -> Keyed a #

Show a => Show (Keyed a) Source # 

Methods

showsPrec :: Int -> Keyed a -> ShowS #

show :: Keyed a -> String #

showList :: [Keyed a] -> ShowS #

data Package Source #

The actual npm package with dependencies and a way to download.

Constructors

Package 

Fields

data Remote Source #

Information on where to download the package.

Constructors

FileRemote 

Fields

GitRemote 

Fields

Instances