|
1 | 1 | -- Code generated by protoc-gen-haskell 0.1.0, DO NOT EDIT.
|
2 |
| -{-# LANGUAGE DerivingVia, DeriveAnyClass, DuplicateRecordFields, PatternSynonyms #-} |
| 2 | +{-# LANGUAGE DerivingVia, DeriveAnyClass, DuplicateRecordFields #-} |
3 | 3 | {-# OPTIONS_GHC -Wno-unused-imports -Wno-missing-export-lists #-}
|
4 | 4 | module Semantic.Proto.SemanticPB where
|
5 | 5 |
|
@@ -746,46 +746,32 @@ instance Proto3.Message DiffTreeEdge where
|
746 | 746 | <*> at decodeMessageField 2
|
747 | 747 | dotProto = undefined
|
748 | 748 |
|
749 |
| -data DiffTreeVertexDiffTerm = DiffTreeVertexDiffTerm |
750 |
| - { deleted :: Maybe DeletedTerm |
751 |
| - , inserted :: Maybe InsertedTerm |
752 |
| - , replaced :: Maybe ReplacedTerm |
753 |
| - , merged :: Maybe MergedTerm |
754 |
| - } deriving stock (Eq, Ord, Show, Generic) |
755 |
| - deriving anyclass (Proto3.Message, Proto3.Named, NFData) |
756 |
| - |
757 |
| -pattern Deleted :: DeletedTerm -> DiffTreeVertexDiffTerm |
758 |
| -pattern Deleted a = DiffTreeVertexDiffTerm (Just a) Nothing Nothing Nothing |
759 |
| - |
760 |
| -pattern Inserted :: InsertedTerm -> DiffTreeVertexDiffTerm |
761 |
| -pattern Inserted a = DiffTreeVertexDiffTerm Nothing (Just a) Nothing Nothing |
762 |
| - |
763 |
| -pattern Replaced :: ReplacedTerm -> DiffTreeVertexDiffTerm |
764 |
| -pattern Replaced a = DiffTreeVertexDiffTerm Nothing Nothing (Just a) Nothing |
765 |
| - |
766 |
| -pattern Merged :: MergedTerm -> DiffTreeVertexDiffTerm |
767 |
| -pattern Merged a = DiffTreeVertexDiffTerm Nothing Nothing Nothing (Just a) |
| 749 | +data DiffTreeVertexDiffTerm |
| 750 | + = Deleted (Maybe DeletedTerm) |
| 751 | + | Inserted (Maybe InsertedTerm) |
| 752 | + | Replaced (Maybe ReplacedTerm) |
| 753 | + | Merged (Maybe MergedTerm) |
| 754 | + deriving stock (Eq, Ord, Show, Generic) |
| 755 | + deriving anyclass (Proto3.Message, Proto3.Named, NFData) |
768 | 756 |
|
769 | 757 | instance FromJSONPB DiffTreeVertexDiffTerm where
|
770 |
| - parseJSONPB = A.withObject "DiffTreeVertexDiffTerm" $ \obj -> DiffTreeVertexDiffTerm |
771 |
| - <$> obj .: "deleted" |
772 |
| - <*> obj .: "inserted" |
773 |
| - <*> obj .: "replaced" |
774 |
| - <*> obj .: "merged" |
| 758 | + parseJSONPB = A.withObject "DiffTreeVertexDiffTerm" $ \obj -> msum |
| 759 | + [ |
| 760 | + Deleted <$> parseField obj "deleted" |
| 761 | + , Inserted <$> parseField obj "inserted" |
| 762 | + , Replaced <$> parseField obj "replaced" |
| 763 | + , Merged <$> parseField obj "merged" |
| 764 | + ] |
775 | 765 |
|
776 | 766 | instance ToJSONPB DiffTreeVertexDiffTerm where
|
777 |
| - toJSONPB DiffTreeVertexDiffTerm{..} = object |
778 |
| - [ "deleted" .= deleted |
779 |
| - , "inserted" .= inserted |
780 |
| - , "replaced" .= replaced |
781 |
| - , "merged" .= merged |
782 |
| - ] |
783 |
| - toEncodingPB DiffTreeVertexDiffTerm{..} = pairs |
784 |
| - [ "deleted" .= deleted |
785 |
| - , "inserted" .= inserted |
786 |
| - , "replaced" .= replaced |
787 |
| - , "merged" .= merged |
788 |
| - ] |
| 767 | + toJSONPB (Deleted x) = object [ "deleted" .= x ] |
| 768 | + toJSONPB (Inserted x) = object [ "inserted" .= x ] |
| 769 | + toJSONPB (Replaced x) = object [ "replaced" .= x ] |
| 770 | + toJSONPB (Merged x) = object [ "merged" .= x ] |
| 771 | + toEncodingPB (Deleted x) = pairs [ "deleted" .= x ] |
| 772 | + toEncodingPB (Inserted x) = pairs [ "inserted" .= x ] |
| 773 | + toEncodingPB (Replaced x) = pairs [ "replaced" .= x ] |
| 774 | + toEncodingPB (Merged x) = pairs [ "merged" .= x ] |
789 | 775 |
|
790 | 776 | instance FromJSON DiffTreeVertexDiffTerm where
|
791 | 777 | parseJSON = parseJSONPB
|
@@ -828,11 +814,23 @@ instance Proto3.Message DiffTreeVertex where
|
828 | 814 | encodeMessage _ DiffTreeVertex{..} = mconcat
|
829 | 815 | [
|
830 | 816 | encodeMessageField 1 diffVertexId
|
831 |
| - , encodeMessageField 2 (Proto3.Nested diffTerm) |
| 817 | + , case diffTerm of |
| 818 | + Nothing -> mempty |
| 819 | + Just (Deleted deleted) -> encodeMessageField 2 deleted |
| 820 | + Just (Inserted inserted) -> encodeMessageField 3 inserted |
| 821 | + Just (Replaced replaced) -> encodeMessageField 4 replaced |
| 822 | + Just (Merged merged) -> encodeMessageField 5 merged |
832 | 823 | ]
|
833 | 824 | decodeMessage _ = DiffTreeVertex
|
834 | 825 | <$> at decodeMessageField 1
|
835 |
| - <*> at decodeMessageField 2 |
| 826 | + <*> oneof |
| 827 | + Nothing |
| 828 | + [ |
| 829 | + (2, Just . Deleted <$> decodeMessageField) |
| 830 | + , (3, Just . Inserted <$> decodeMessageField) |
| 831 | + , (4, Just . Replaced <$> decodeMessageField) |
| 832 | + , (5, Just . Merged <$> decodeMessageField) |
| 833 | + ] |
836 | 834 | dotProto = undefined
|
837 | 835 |
|
838 | 836 | data DeletedTerm = DeletedTerm
|
|
0 commit comments