{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TypeFamilies #-}
module Data.BAM.Version1_6.BAM.Alignment.OptionalFields.HOPT (
BAM_V1_6_BAM_Alignment_OptionalFields_HOPT(..)
) where
import Data.ByteString (ByteString)
import Data.Data
import Data.Sequence
import Generics.Deriving.Base
data BAM_V1_6_BAM_Alignment_OptionalFields_HOPT = BAM_V1_6_BAM_Alignment_OptionalFields_HOPT
{ BAM_V1_6_BAM_Alignment_OptionalFields_HOPT -> ByteString
bam_v1_6_bam_alignment_optionalfields_hopt_tag :: ByteString
, BAM_V1_6_BAM_Alignment_OptionalFields_HOPT -> Seq ByteString
bam_v1_6_bam_alignment_optionalfields_hopt_value :: Seq ByteString
} deriving ((forall x.
BAM_V1_6_BAM_Alignment_OptionalFields_HOPT
-> Rep BAM_V1_6_BAM_Alignment_OptionalFields_HOPT x)
-> (forall x.
Rep BAM_V1_6_BAM_Alignment_OptionalFields_HOPT x
-> BAM_V1_6_BAM_Alignment_OptionalFields_HOPT)
-> Generic BAM_V1_6_BAM_Alignment_OptionalFields_HOPT
forall x.
Rep BAM_V1_6_BAM_Alignment_OptionalFields_HOPT x
-> BAM_V1_6_BAM_Alignment_OptionalFields_HOPT
forall x.
BAM_V1_6_BAM_Alignment_OptionalFields_HOPT
-> Rep BAM_V1_6_BAM_Alignment_OptionalFields_HOPT x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cfrom :: forall x.
BAM_V1_6_BAM_Alignment_OptionalFields_HOPT
-> Rep BAM_V1_6_BAM_Alignment_OptionalFields_HOPT x
from :: forall x.
BAM_V1_6_BAM_Alignment_OptionalFields_HOPT
-> Rep BAM_V1_6_BAM_Alignment_OptionalFields_HOPT x
$cto :: forall x.
Rep BAM_V1_6_BAM_Alignment_OptionalFields_HOPT x
-> BAM_V1_6_BAM_Alignment_OptionalFields_HOPT
to :: forall x.
Rep BAM_V1_6_BAM_Alignment_OptionalFields_HOPT x
-> BAM_V1_6_BAM_Alignment_OptionalFields_HOPT
Generic,Typeable)
instance Eq BAM_V1_6_BAM_Alignment_OptionalFields_HOPT where
BAM_V1_6_BAM_Alignment_OptionalFields_HOPT ByteString
bam_v1_6_bam_alignment_optionalfields_hopt_tag1
Seq ByteString
bam_v1_6_bam_alignment_optionalfields_hopt_value1 == :: BAM_V1_6_BAM_Alignment_OptionalFields_HOPT
-> BAM_V1_6_BAM_Alignment_OptionalFields_HOPT -> Bool
==
BAM_V1_6_BAM_Alignment_OptionalFields_HOPT ByteString
bam_v1_6_bam_alignment_optionalfields_hopt_tag2
Seq ByteString
bam_v1_6_bam_alignment_optionalfields_hopt_value2 =
ByteString
bam_v1_6_bam_alignment_optionalfields_hopt_tag1 ByteString -> ByteString -> Bool
forall a. Eq a => a -> a -> Bool
== ByteString
bam_v1_6_bam_alignment_optionalfields_hopt_tag2 Bool -> Bool -> Bool
&&
Seq ByteString
bam_v1_6_bam_alignment_optionalfields_hopt_value1 Seq ByteString -> Seq ByteString -> Bool
forall a. Eq a => a -> a -> Bool
== Seq ByteString
bam_v1_6_bam_alignment_optionalfields_hopt_value2
instance Show BAM_V1_6_BAM_Alignment_OptionalFields_HOPT where
show :: BAM_V1_6_BAM_Alignment_OptionalFields_HOPT -> String
show (BAM_V1_6_BAM_Alignment_OptionalFields_HOPT ByteString
tag
Seq ByteString
value
) =
String
"BAM_V1_6_BAM_Alignment_OptionalFields_HOPT { " String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
"bam_v1_6_bam_alignment_optionalfields_hopt_tag = " String -> ShowS
forall a. [a] -> [a] -> [a]
++
(ByteString -> String
forall a. Show a => a -> String
show ByteString
tag) String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
" , bam_v1_6_bam_alignment_optionalfields_hopt_value = " String -> ShowS
forall a. [a] -> [a] -> [a]
++
(Seq ByteString -> String
forall a. Show a => a -> String
show Seq ByteString
value) String -> ShowS
forall a. [a] -> [a] -> [a]
++
String
" }"