purescript-0.7.5: src/Language/PureScript/CoreFn/Literals.hs
-----------------------------------------------------------------------------
--
-- Module : Language.PureScript.CoreFn.Literals
-- Copyright : (c) 2013-14 Phil Freeman, (c) 2014 Gary Burgess, and other contributors
-- License : MIT
--
-- Maintainer : Phil Freeman <paf31@cantab.net>, Gary Burgess <gary.burgess@gmail.com>
-- Stability : experimental
-- Portability :
--
-- | The core functional representation for literal values.
--
-----------------------------------------------------------------------------
{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveFunctor #-}
module Language.PureScript.CoreFn.Literals where
import qualified Data.Data as D
-- |
-- Data type for literal values. Parameterised so it can be used for Exprs and
-- Binders.
--
data Literal a
-- |
-- A numeric literal
--
= NumericLiteral (Either Integer Double)
-- |
-- A string literal
--
| StringLiteral String
-- |
-- A character literal
--
| CharLiteral Char
-- |
-- A boolean literal
--
| BooleanLiteral Bool
-- |
-- An array literal
--
| ArrayLiteral [a]
-- |
-- An object literal
--
| ObjectLiteral [(String, a)] deriving (Show, Read, D.Data, D.Typeable, Functor)