th-serde-0.1.3.0: A serialization/deserialization framework for Haskell
Safe HaskellNone
LanguageGHC2021

Data.Serde.Internal.ISyn

Contents

Description

intermediate syntax for the parser

see Data.Serde.Syn for the grammar

Synopsis

Documentation

data ISyn Source #

intermediate representation of type definitions parsed from the input syntax. can be a data type, newtype, or type alias.

Constructors

ISynData 

Fields

ISynNewtype 
ISynAlias 

Fields

Instances

Instances details
Show ISyn Source # 
Instance details

Defined in Data.Serde.Internal.ISyn

Methods

showsPrec :: Int -> ISyn -> ShowS #

show :: ISyn -> String #

showList :: [ISyn] -> ShowS #

data ISynFld Source #

field definition for data types and newtypes, containing a field name and its type information

Constructors

ISynFld 

Instances

Instances details
Show ISynFld Source # 
Instance details

Defined in Data.Serde.Internal.ISyn

data INewtypePayload Source #

payload for newtype definitions, which can either be a field with a name and type, or just a type

Constructors

IField ISynFld 
IType ViaInfo 

Instances

Instances details
Show INewtypePayload Source # 
Instance details

Defined in Data.Serde.Internal.ISyn

data ViaInfo Source #

type information that may include a via clause

Instances

Instances details
Show ViaInfo Source # 
Instance details

Defined in Data.Serde.Internal.ISyn

newtype Derive Source #

collection of type classes to derive for all defined types

Constructors

Derive 

Fields

Instances

Instances details
Show Derive Source # 
Instance details

Defined in Data.Serde.Internal.ISyn

type Parser = Parsec Void String Source #

parser type for the intermediate syntax

debug