mdgriffith / elm-codegen / Elm.Annotation


type alias Annotation =
Internal.Compiler.Annotation

var : String -> Annotation

A type variable

bool : Annotation

int : Annotation

float : Annotation

string : Annotation

char : Annotation

unit : Annotation

cmd : Annotation -> Annotation

sub : Annotation -> Annotation

named : List String -> String -> Annotation

namedWith : List String -> String -> List Annotation -> Annotation

maybe : Annotation -> Annotation

list : Annotation -> Annotation

tuple : Annotation -> Annotation -> Annotation

triple : Annotation -> Annotation -> Annotation -> Annotation

set : Annotation -> Annotation

dict : Annotation -> Annotation -> Annotation

result : Annotation -> Annotation -> Annotation

record : List ( String, Annotation ) -> Annotation

extensible : String -> List ( String, Annotation ) -> Annotation

alias : List String -> String -> List Annotation -> Annotation -> Annotation

The classic example of a Model

Elm.Annotation.alias []
    "Model"
    []
    (Elm.Annotation.record
        [ ( "hello", Elm.Annotation.string ) ]
    )

would correspond to

type alias Model =
    { hello : String
    }

function : List Annotation -> Annotation -> Annotation

toString : Annotation -> String