mdgriffith/elm-codegen/4.2.1

NOTE: the latest version is 6.0.3

Elm.Op

This module helps generate operators!

So, this

Elm.Op.equal (Elm.bool True) (Elm.bool False)

Would generate

True == False

Equality

equal : Expression -> Expression -> Expression

==

notEqual : Expression -> Expression -> Expression

/=

and : Expression -> Expression -> Expression

&&

or : Expression -> Expression -> Expression

||

Lists and strings

append : Expression -> Expression -> Expression

++

cons : Expression -> Expression -> Expression

::

Math

plus : Expression -> Expression -> Expression

+

minus : Expression -> Expression -> Expression

-

multiply : Expression -> Expression -> Expression

*

divide : Expression -> Expression -> Expression

/

intDivide : Expression -> Expression -> Expression

//

power : Expression -> Expression -> Expression

The to-the-power-of operator ^

Comparisons

lt : Expression -> Expression -> Expression

<

gt : Expression -> Expression -> Expression

>

lte : Expression -> Expression -> Expression

<=

gte : Expression -> Expression -> Expression

>=

pipe : Expression -> Expression -> Expression

|>

Elm.value "thang"
    |> Elm.Op.pipe (Elm.value "thang2")
    |> Elm.Op.pipe (Elm.value "thang3")

Results in

thang
    |> thang2
    |> thang3
parens : Expression -> Expression

Wrap an expression in parentheses.

Generally you won't need this as elm-codegen handles parens for you, but it can be useful to semantically group operations from this module.

Parsing

keep : Expression -> Expression -> Expression

used in the elm/parser library

|=

Url parsing

slash : Expression -> Expression -> Expression

</> used in url parsing

query : Expression -> Expression -> Expression

<?> used in url parsing