linsyking/messenger-core/5.0.0

NOTE: the latest version is 20.0.0

Renamed to elm-messenger/messenger-core. That is where the repository lives now. It has not been published as a package under the new name.

Versions published as linsyking/messenger-core still install under that name. 34 versions of 52 come from the new location (see their notes). 7 versions could not be recovered and cannot be installed.

Rerouted (renamed, verified). The GitHub user or repository was renamed. The tag is still there, at the new name. The Lamdera package server serves a copy recovered from https://github.com/elm-messenger/messenger-core.

What we checked: The repo moved to github.com/elm-messenger/messenger-core. Rebuilt with git archive from commit bc32e3bb46d2 of https://github.com/elm-messenger/messenger-core (zip prefix linsyking-messenger-core-bc32e3b/, America/Los_Angeles times): the zip is byte-identical to the one package.elm-lang.org recorded, SHA-1 0a9e1dca7d677d5e46799addb29802a2b88d4dc3.

The Lamdera compiler uses this copy and prints a one-line notice saying so. elm itself fails to download this version.

Details · package.elm-lang.org's zip: https://github.com/linsyking/messenger-core/zipball/5.0.0/

Messenger.Recursion

Recursion

This module provides the signature for the updater

type alias Updater a b c d =
a -> c -> b -> ( a, List ( d, b ), c )

The updater a: message sender (object) b: message c: environment messages d: target

type alias Matcher a d =
a -> d -> Bool

Return true if the target is the sender (second argument)

type alias Super d =
d -> Bool

Return true if the target is the parent

type alias Cleaner c =
c -> c

Clean the environment

type alias RecBody a b c d =
{ update : Updater a b c d
, match : Matcher a d
, super : Super d
, clean : Cleaner c
}

RecBody type.

Pass this as an argument to the updater