Module

Tracing.Attributes

Convenience aliases for creating attribute values, reducing need for type annotations compared to using the underlying untagged-union function

Intended for qualified import e.g. import Tracing.Attributes as Attributes.

#string

string :: String -> Attribute

A String attribute

#atom

atom :: Atom -> Attribute

An Atom attribute

#boolean

boolean :: Boolean -> Attribute

A Boolean attribute, which is to say a restricted sort of atom.

#int

int :: Int -> Attribute

An Int attribute

#number

number :: Number -> Attribute

A Number attribute.

#list

list :: List (Union |$| String |+| Atom |+| Int |+| Number |+| Nil) -> Attribute

A list attribute. The members of the list should be constructed using the untagged-union inj directly

Attributes.list (inj "abc" : inj 42 : nil)

Modules