cometia0/messenger-core/2.0.0

Messenger.GeneralModel

General Model

General model is designed to be an abstract interface of scenes, layers, components, game components, etc..

  • a: data type
  • b: environment type
  • c: init type
  • d: message type
  • e: target type
  • f: render type
type alias GeneralModel a b d e f =
{ name : String
, data : a
, update : b -> d -> a -> ( a, List ( e, d ), b )
, view : b -> a -> f
}

General Model.

This has a name field.

viewModelList : b -> List (GeneralModel a b d e f) -> List f

View model list.

viewModelArray : b -> Array (GeneralModel a b d e f) -> List f

View model array.