Language.PureScript.CoreFn.Meta

purescript-0.15.15: PureScript Programming Language Compiler

Safe Haskell | None
Language | Haskell2010

Language.PureScript.CoreFn.Meta

Description

Metadata annotations for core functional representation

Synopsis

- data Meta
  - = IsConstructor ConstructorType [Ident]
  - | IsNewtype
  - | IsTypeClassConstructor
  - | IsForeign
  - | IsWhere
  - | IsSyntheticApp
- data ConstructorType
  - = ProductType
  - | SumType

# Documentation

data Meta #

Metadata annotations

Constructors

IsConstructor ConstructorType [Ident] | The contained value is a data constructor
IsNewtype | The contained value is a newtype
IsTypeClassConstructor | The contained value is a typeclass dictionary constructor
IsForeign | The contained reference is for a foreign member
IsWhere | The contained value is a where clause
IsSyntheticApp | The contained function application was synthesized by the compiler

#### Instances

Instances details

Show Meta # |
Instance details Defined in Language.PureScript.CoreFn.Meta Methods showsPrec :: Int -> Meta -> ShowS # show :: Meta -> String # showList :: [Meta] -> ShowS #
Eq Meta # |
Instance details Defined in Language.PureScript.CoreFn.Meta Methods (==) :: Meta -> Meta -> Bool # (/=) :: Meta -> Meta -> Bool #
Ord Meta # |
Instance details Defined in Language.PureScript.CoreFn.Meta Methods compare :: Meta -> Meta -> Ordering # (<) :: Meta -> Meta -> Bool # (<=) :: Meta -> Meta -> Bool # (>) :: Meta -> Meta -> Bool # (>=) :: Meta -> Meta -> Bool # max :: Meta -> Meta -> Meta # min :: Meta -> Meta -> Meta #

data ConstructorType #

Data constructor metadata

Constructors

ProductType | The constructor is for a type with a single constructor
SumType | The constructor is for a type with multiple constructors

#### Instances

Instances details

Show ConstructorType # |
Instance details Defined in Language.PureScript.CoreFn.Meta Methods showsPrec :: Int -> ConstructorType -> ShowS # show :: ConstructorType -> String # showList :: [ConstructorType] -> ShowS #
Eq ConstructorType # |
Instance details Defined in Language.PureScript.CoreFn.Meta Methods (==) :: ConstructorType -> ConstructorType -> Bool # (/=) :: ConstructorType -> ConstructorType -> Bool #
Ord ConstructorType # |
Instance details Defined in Language.PureScript.CoreFn.Meta Methods compare :: ConstructorType -> ConstructorType -> Ordering # (<) :: ConstructorType -> ConstructorType -> Bool # (<=) :: ConstructorType -> ConstructorType -> Bool # (>) :: ConstructorType -> ConstructorType -> Bool # (>=) :: ConstructorType -> ConstructorType -> Bool # max :: ConstructorType -> ConstructorType -> ConstructorType # min :: ConstructorType -> ConstructorType -> ConstructorType #