texmath-0.12.0.2: Conversion between formats used to represent mathematics.
Safe HaskellNone
LanguageHaskell2010

Text.TeXMath.Types

Description

Types for representing a structured formula.

Synopsis

Documentation

data Exp #

Constructors

ENumber Text

A number (<mn> in MathML).

EGrouped [Exp]

A group of expressions that function as a unit (e.g. {...}) in TeX, <mrow>...</mrow> in MathML.

EDelimited Text Text [InEDelimited]

A group of expressions inside paired open and close delimiters (which may in some cases be null).

EIdentifier Text

An identifier, e.g. a variable (<mi>...</mi> in MathML. Note that MathML tends to use <mi> tags for "sin" and other mathematical operators; these are represented as EMathOperator in TeXMath.

EMathOperator Text

A spelled-out operator like lim or sin.

ESymbol TeXSymbolType Text

A symbol.

ESpace Rational

A space, with the width specified in em.

ESub Exp Exp

An expression with a subscript. First argument is base, second subscript.

ESuper Exp Exp

An expresion with a superscript. First argument is base, second subscript.

ESubsup Exp Exp Exp

An expression with both a sub and a superscript. First argument is base, second subscript, third superscript.

EOver Bool Exp Exp

An expression with something over it. The first argument is True if the formula is "convertible:" that is, if the material over the formula should appear as a regular superscript in inline math. The second argument is the base, the third the expression that goes over it.

EUnder Bool Exp Exp

An expression with something under it. The arguments work as in EOver.

EUnderover Bool Exp Exp Exp

An expression with something over and something under it.

EPhantom Exp

A "phantom" operator that takes space but doesn't display.

EBoxed Exp

A boxed expression.

EFraction FractionType Exp Exp

A fraction. First argument is numerator, second denominator.

ERoot Exp Exp

An nth root. First argument is index, second is base.

ESqrt Exp

A square root.

EScaled Rational Exp

An expression that is scaled to some factor of its normal size.

EArray [Alignment] [ArrayLine]

An array or matrix. The first argument specifies the alignments of the columns; the second gives the contents of the lines. All of these lists should be the same length.

EText TextType Text

Some normal text, possibly styled.

EStyled TextType [Exp]

A group of styled expressions.

Instances

Instances details
Eq Exp # 
Instance details

Defined in Text.TeXMath.Types

Methods

(==) :: Exp -> Exp -> Bool

(/=) :: Exp -> Exp -> Bool

Data Exp # 
Instance details

Defined in Text.TeXMath.Types

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Exp -> c Exp

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Exp

toConstr :: Exp -> Constr

dataTypeOf :: Exp -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Exp)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Exp)

gmapT :: (forall b. Data b => b -> b) -> Exp -> Exp

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Exp -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Exp -> r

gmapQ :: (forall d. Data d => d -> u) -> Exp -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> Exp -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Exp -> m Exp

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Exp -> m Exp

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Exp -> m Exp

Ord Exp # 
Instance details

Defined in Text.TeXMath.Types

Methods

compare :: Exp -> Exp -> Ordering

(<) :: Exp -> Exp -> Bool

(<=) :: Exp -> Exp -> Bool

(>) :: Exp -> Exp -> Bool

(>=) :: Exp -> Exp -> Bool

max :: Exp -> Exp -> Exp

min :: Exp -> Exp -> Exp

Read Exp # 
Instance details

Defined in Text.TeXMath.Types

Methods

readsPrec :: Int -> ReadS Exp #

readList :: ReadS [Exp] #

readPrec :: ReadPrec Exp #

readListPrec :: ReadPrec [Exp] #

Show Exp # 
Instance details

Defined in Text.TeXMath.Types

Methods

showsPrec :: Int -> Exp -> ShowS

show :: Exp -> String

showList :: [Exp] -> ShowS

data TeXSymbolType #

Instances

Instances details
Eq TeXSymbolType # 
Instance details

Defined in Text.TeXMath.Types

Data TeXSymbolType # 
Instance details

Defined in Text.TeXMath.Types

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> TeXSymbolType -> c TeXSymbolType

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c TeXSymbolType

toConstr :: TeXSymbolType -> Constr

dataTypeOf :: TeXSymbolType -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c TeXSymbolType)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c TeXSymbolType)

gmapT :: (forall b. Data b => b -> b) -> TeXSymbolType -> TeXSymbolType

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> TeXSymbolType -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> TeXSymbolType -> r

gmapQ :: (forall d. Data d => d -> u) -> TeXSymbolType -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> TeXSymbolType -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> TeXSymbolType -> m TeXSymbolType

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> TeXSymbolType -> m TeXSymbolType

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> TeXSymbolType -> m TeXSymbolType

Ord TeXSymbolType # 
Instance details

Defined in Text.TeXMath.Types

Read TeXSymbolType # 
Instance details

Defined in Text.TeXMath.Types

Show TeXSymbolType # 
Instance details

Defined in Text.TeXMath.Types

Methods

showsPrec :: Int -> TeXSymbolType -> ShowS

show :: TeXSymbolType -> String

showList :: [TeXSymbolType] -> ShowS

type ArrayLine = [[Exp]] #

data FractionType #

Constructors

NormalFrac

Displayed or textual, acc to DisplayType

DisplayFrac

Force display mode

InlineFrac

Force inline mode (textual)

NoLineFrac

No line between top and bottom

Instances

Instances details
Eq FractionType # 
Instance details

Defined in Text.TeXMath.Types

Methods

(==) :: FractionType -> FractionType -> Bool

(/=) :: FractionType -> FractionType -> Bool

Data FractionType # 
Instance details

Defined in Text.TeXMath.Types

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FractionType -> c FractionType

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c FractionType

toConstr :: FractionType -> Constr

dataTypeOf :: FractionType -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c FractionType)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c FractionType)

gmapT :: (forall b. Data b => b -> b) -> FractionType -> FractionType

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FractionType -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FractionType -> r

gmapQ :: (forall d. Data d => d -> u) -> FractionType -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> FractionType -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> FractionType -> m FractionType

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FractionType -> m FractionType

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FractionType -> m FractionType

Ord FractionType # 
Instance details

Defined in Text.TeXMath.Types

Read FractionType # 
Instance details

Defined in Text.TeXMath.Types

Show FractionType # 
Instance details

Defined in Text.TeXMath.Types

Methods

showsPrec :: Int -> FractionType -> ShowS

show :: FractionType -> String

showList :: [FractionType] -> ShowS

data TextType #

Instances

Instances details
Eq TextType # 
Instance details

Defined in Text.TeXMath.Types

Methods

(==) :: TextType -> TextType -> Bool

(/=) :: TextType -> TextType -> Bool

Data TextType # 
Instance details

Defined in Text.TeXMath.Types

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> TextType -> c TextType

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c TextType

toConstr :: TextType -> Constr

dataTypeOf :: TextType -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c TextType)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c TextType)

gmapT :: (forall b. Data b => b -> b) -> TextType -> TextType

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> TextType -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> TextType -> r

gmapQ :: (forall d. Data d => d -> u) -> TextType -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> TextType -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> TextType -> m TextType

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> TextType -> m TextType

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> TextType -> m TextType

Ord TextType # 
Instance details

Defined in Text.TeXMath.Types

Methods

compare :: TextType -> TextType -> Ordering

(<) :: TextType -> TextType -> Bool

(<=) :: TextType -> TextType -> Bool

(>) :: TextType -> TextType -> Bool

(>=) :: TextType -> TextType -> Bool

max :: TextType -> TextType -> TextType

min :: TextType -> TextType -> TextType

Read TextType # 
Instance details

Defined in Text.TeXMath.Types

Methods

readsPrec :: Int -> ReadS TextType #

readList :: ReadS [TextType] #

readPrec :: ReadPrec TextType #

readListPrec :: ReadPrec [TextType] #

Show TextType # 
Instance details

Defined in Text.TeXMath.Types

Methods

showsPrec :: Int -> TextType -> ShowS

show :: TextType -> String

showList :: [TextType] -> ShowS

data Alignment #

Instances

Instances details
Eq Alignment # 
Instance details

Defined in Text.TeXMath.Types

Methods

(==) :: Alignment -> Alignment -> Bool

(/=) :: Alignment -> Alignment -> Bool

Data Alignment # 
Instance details

Defined in Text.TeXMath.Types

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Alignment -> c Alignment

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Alignment

toConstr :: Alignment -> Constr

dataTypeOf :: Alignment -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Alignment)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Alignment)

gmapT :: (forall b. Data b => b -> b) -> Alignment -> Alignment

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Alignment -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Alignment -> r

gmapQ :: (forall d. Data d => d -> u) -> Alignment -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> Alignment -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Alignment -> m Alignment

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Alignment -> m Alignment

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Alignment -> m Alignment

Ord Alignment # 
Instance details

Defined in Text.TeXMath.Types

Methods

compare :: Alignment -> Alignment -> Ordering

(<) :: Alignment -> Alignment -> Bool

(<=) :: Alignment -> Alignment -> Bool

(>) :: Alignment -> Alignment -> Bool

(>=) :: Alignment -> Alignment -> Bool

max :: Alignment -> Alignment -> Alignment

min :: Alignment -> Alignment -> Alignment

Read Alignment # 
Instance details

Defined in Text.TeXMath.Types

Methods

readsPrec :: Int -> ReadS Alignment #

readList :: ReadS [Alignment] #

readPrec :: ReadPrec Alignment #

readListPrec :: ReadPrec [Alignment] #

Show Alignment # 
Instance details

Defined in Text.TeXMath.Types

Methods

showsPrec :: Int -> Alignment -> ShowS

show :: Alignment -> String

showList :: [Alignment] -> ShowS

data DisplayType #

Constructors

DisplayBlock

A displayed formula.

DisplayInline

A formula rendered inline in text.

Instances

Instances details
Eq DisplayType # 
Instance details

Defined in Text.TeXMath.Types

Methods

(==) :: DisplayType -> DisplayType -> Bool

(/=) :: DisplayType -> DisplayType -> Bool

Ord DisplayType # 
Instance details

Defined in Text.TeXMath.Types

Show DisplayType # 
Instance details

Defined in Text.TeXMath.Types

Methods

showsPrec :: Int -> DisplayType -> ShowS

show :: DisplayType -> String

showList :: [DisplayType] -> ShowS

data Operator #

A record of the MathML dictionary as defined in the specification

Constructors

Operator 

Fields

Instances

Instances details
Show Operator # 
Instance details

Defined in Text.TeXMath.Types

Methods

showsPrec :: Int -> Operator -> ShowS

show :: Operator -> String

showList :: [Operator] -> ShowS

data FormType #

Constructors

FPrefix 
FPostfix 
FInfix 

Instances

Instances details
Eq FormType # 
Instance details

Defined in Text.TeXMath.Types

Methods

(==) :: FormType -> FormType -> Bool

(/=) :: FormType -> FormType -> Bool

Ord FormType # 
Instance details

Defined in Text.TeXMath.Types

Methods

compare :: FormType -> FormType -> Ordering

(<) :: FormType -> FormType -> Bool

(<=) :: FormType -> FormType -> Bool

(>) :: FormType -> FormType -> Bool

(>=) :: FormType -> FormType -> Bool

max :: FormType -> FormType -> FormType

min :: FormType -> FormType -> FormType

Show FormType # 
Instance details

Defined in Text.TeXMath.Types

Methods

showsPrec :: Int -> FormType -> ShowS

show :: FormType -> String

showList :: [FormType] -> ShowS

data Record #

A record of the Unicode to LaTeX lookup table a full descripton can be seen <http://milde.users.sourceforge.net/LUCR/Math/data/unimathsymbols.txt here>

Constructors

Record 

Fields

Instances

Instances details
Show Record # 
Instance details

Defined in Text.TeXMath.Types

Methods

showsPrec :: Int -> Record -> ShowS

show :: Record -> String

showList :: [Record] -> ShowS

type Property = Text #

data Position #

Constructors

Under 
Over 

type Env = [Text] #

List of available packages

defaultEnv :: [Text] #

Contains amsmath and amssymbol

type InEDelimited = Either Middle Exp #

An EDelimited element contains a string of ordinary expressions (represented here as Right values) or fences (represented here as Left, and in LaTeX using mid).