Dominaezzz
12/16/2018, 4:30 PMAlan Evans
12/16/2018, 4:34 PMAlan Evans
12/16/2018, 4:36 PMkarelpeeters
12/16/2018, 4:37 PMRuckus
12/16/2018, 4:41 PMAlan Evans
12/16/2018, 4:44 PMDominaezzz
12/16/2018, 4:44 PMRuckus
12/16/2018, 4:47 PMRuckus
12/16/2018, 4:47 PMRuckus
12/16/2018, 4:49 PMkarelpeeters
12/16/2018, 4:49 PMAlan Evans
12/16/2018, 4:49 PMAlan Evans
12/16/2018, 4:50 PMMyModelObject
and I want to map it to something else I might make fun MyModelObject.mapToDisplayObject(): DisplayObject
To make that a member function would mean MyModelObject
file having dependency on DisplayObject
, which would be yucky and maybe not even possible if they are in different modules.Ruckus
12/16/2018, 4:51 PMRuckus
12/16/2018, 4:52 PMAlan Evans
12/16/2018, 4:53 PMAlan Evans
12/16/2018, 4:53 PMoverride
, so their function will have a different package and/or nameRuckus
12/16/2018, 4:54 PMRuckus
12/16/2018, 4:55 PMAlan Evans
12/16/2018, 4:59 PMYou can provide a common use case to your users, but they can provide their own implementation if they want.This is true no matter if you opt for a member function or an extension function.
Ruckus
12/16/2018, 5:05 PMColor
class, and a Color.mix
extension that does simple linear interpolation. Someone wants to use my library, but wants the Color.mix
function to do alpha blessing instead.Ruckus
12/16/2018, 5:06 PMAlan Evans
12/16/2018, 5:24 PMRuckus
12/16/2018, 5:28 PM