JuliaBerry / SenseHat.jl

Julia package for the Raspberry Pi Sense HAT
Other
15 stars 12 forks source link

Make use of type dispatch #7

Open scls19fr opened 5 years ago

scls19fr commented 5 years ago

Hello,

Looking at SenseHat.jl code, I noticed (for example)

https://github.com/JuliaBerry/SenseHat.jl/blob/a30a6cd86ff80ee3a0a8af71db212f9c6170b4ab/src/sensors.jl#L36

Maybe you should consider making use of type dispatch

abstract type AbstractSensor end
struct HTS221 <: AbstractSensor
end

humidity()    = humidity(HTS221()) 

Kind regards

PS : I didn't test code

scls19fr commented 5 years ago

led_clear could simply be named clear

https://github.com/JuliaBerry/SenseHat.jl/blob/a30a6cd86ff80ee3a0a8af71db212f9c6170b4ab/src/led.jl#L138

sense = SenseHat()
clear(sense.led)

Maybe you should also make use of setproperty! / getproperty

Array(sense.led)  # or sh.led.array ?
sense.led.array = new_array  # setproperty!
sense.led.gamma = new_gamma
gamma = sh.led.gamma