aeson-diff-1.1.0.8: Extract and apply patches to JSON documents.
Safe HaskellNone
LanguageHaskell2010

Data.Aeson.Patch

Description

 
Synopsis

Documentation

newtype Patch Source #

Describes the changes between two JSON documents.

Constructors

Patch 

Instances

Instances details
Eq Patch Source # 
Instance details

Defined in Data.Aeson.Patch

Methods

(==) :: Patch -> Patch -> Bool

(/=) :: Patch -> Patch -> Bool

Show Patch Source # 
Instance details

Defined in Data.Aeson.Patch

Methods

showsPrec :: Int -> Patch -> ShowS

show :: Patch -> String

showList :: [Patch] -> ShowS

Semigroup Patch Source # 
Instance details

Defined in Data.Aeson.Patch

Methods

(<>) :: Patch -> Patch -> Patch

sconcat :: NonEmpty Patch -> Patch

stimes :: Integral b => b -> Patch -> Patch

Monoid Patch Source # 
Instance details

Defined in Data.Aeson.Patch

ToJSON Patch Source # 
Instance details

Defined in Data.Aeson.Patch

FromJSON Patch Source # 
Instance details

Defined in Data.Aeson.Patch

data Operation Source #

An Operation describes the operations which can appear as part of a JSON Patch.

See RFC 6902 Section 4 http://tools.ietf.org/html/rfc6902#section-4.

Instances

Instances details
Eq Operation Source # 
Instance details

Defined in Data.Aeson.Patch

Methods

(==) :: Operation -> Operation -> Bool

(/=) :: Operation -> Operation -> Bool

Show Operation Source # 
Instance details

Defined in Data.Aeson.Patch

Methods

showsPrec :: Int -> Operation -> ShowS

show :: Operation -> String

showList :: [Operation] -> ShowS

ToJSON Operation Source # 
Instance details

Defined in Data.Aeson.Patch

FromJSON Operation Source # 
Instance details

Defined in Data.Aeson.Patch

Modification

modifyPointer :: (Pointer -> Pointer) -> Operation -> Operation Source #

Modify the Pointers in an Operation.

If the operation contains multiple pointers (i.e. a Mov or Cpy) then both will be modified.

modifyPointers :: (Pointer -> Pointer) -> Patch -> Patch Source #

Modify the pointers in the Operations of a Patch.

See modifyPointer for details.

Predicates

isAdd :: Operation -> Bool Source #

isRem :: Operation -> Bool Source #

isRep :: Operation -> Bool Source #

isMov :: Operation -> Bool Source #

isCpy :: Operation -> Bool Source #

isTst :: Operation -> Bool Source #