chore: rename Numeric generic parameter to Number so that it's a noun and not mistakeable for a trait
This commit is contained in:
@@ -4,12 +4,12 @@ use super::InputNumberMode;
|
||||
|
||||
#[derive(Debug, FromPyObject)]
|
||||
#[pyo3(from_item_all)]
|
||||
pub struct InputNumberAttributes<Numeric> {
|
||||
initial: Option<Numeric>,
|
||||
pub struct InputNumberAttributes<Number> {
|
||||
initial: Option<Number>,
|
||||
editable: bool,
|
||||
min: Numeric,
|
||||
max: Numeric,
|
||||
step: Numeric,
|
||||
min: Number,
|
||||
max: Number,
|
||||
step: Number,
|
||||
mode: InputNumberMode,
|
||||
// todo: CustomUnitOfMeasurement type? probably not?
|
||||
unit_of_measurement: Option<String>,
|
||||
|
||||
@@ -34,16 +34,14 @@ pub enum CreateSignalError {
|
||||
|
||||
pub fn signal<
|
||||
'py,
|
||||
Numeric: 'static + uom::num::Num + Clone + Send + Sync + FromStr + for<'a, 'py2> FromPyObject<'a, 'py2>,
|
||||
Number: 'static + uom::num::Num + Clone + Send + Sync + FromStr + for<'a, 'py2> FromPyObject<'a, 'py2>,
|
||||
>(
|
||||
py: Python<'py>,
|
||||
home_assistant: &'py HomeAssistant,
|
||||
object_id: ObjectId,
|
||||
) -> Result<
|
||||
(
|
||||
Signal<
|
||||
Option<Arc<Result<HomeAssistantState<Numeric>, StateObjectSignalError<Arc<PyErr>>>>>,
|
||||
>,
|
||||
Signal<Option<Arc<Result<HomeAssistantState<Number>, StateObjectSignalError<Arc<PyErr>>>>>>,
|
||||
impl Future<Output = Result<(), emitter_and_signal::signal::JoinError>>,
|
||||
),
|
||||
CreateSignalError,
|
||||
@@ -51,8 +49,8 @@ pub fn signal<
|
||||
let entity_id = EntityId(Domain::InputNumber, object_id);
|
||||
|
||||
let (signal, task1) = StateObject::<
|
||||
HomeAssistantState<Numeric>,
|
||||
InputNumberAttributes<Numeric>,
|
||||
HomeAssistantState<Number>,
|
||||
InputNumberAttributes<Number>,
|
||||
Py<PyAny>,
|
||||
>::signal(py, home_assistant, entity_id)
|
||||
.context(StateObjectSignalSnafu)?;
|
||||
|
||||
@@ -51,7 +51,7 @@ pub enum CreateSignalError {
|
||||
},
|
||||
}
|
||||
|
||||
pub fn signal<'py, V>(
|
||||
pub fn signal<'py, Number>(
|
||||
py: Python<'py>,
|
||||
home_assistant: &'py HomeAssistant,
|
||||
object_id: ObjectId,
|
||||
@@ -60,7 +60,7 @@ pub fn signal<'py, V>(
|
||||
Signal<
|
||||
Option<
|
||||
Result<
|
||||
HomeAssistantState<uom::si::quantities::Power<V>>,
|
||||
HomeAssistantState<uom::si::quantities::Power<Number>>,
|
||||
StateObjectSignalError<Arc<PyErr>>,
|
||||
>,
|
||||
>,
|
||||
@@ -70,22 +70,22 @@ pub fn signal<'py, V>(
|
||||
CreateSignalError,
|
||||
>
|
||||
where
|
||||
V: 'static + uom::num::Num + Clone + Send + Sync + FromStr,
|
||||
V: uom::num::Num + uom::Conversion<V, T = V>,
|
||||
milliwatt: Conversion<V, T = V>,
|
||||
watt: Conversion<V, T = V>,
|
||||
kilowatt: Conversion<V, T = V>,
|
||||
megawatt: Conversion<V, T = V>,
|
||||
gigawatt: Conversion<V, T = V>,
|
||||
terawatt: Conversion<V, T = V>,
|
||||
btu: Conversion<V, T = V>,
|
||||
hour: Conversion<V, T = V>,
|
||||
SI<V>: Units<V>,
|
||||
Number: 'static + uom::num::Num + Clone + Send + Sync + FromStr,
|
||||
Number: uom::num::Num + uom::Conversion<Number, T = Number>,
|
||||
milliwatt: Conversion<Number, T = Number>,
|
||||
watt: Conversion<Number, T = Number>,
|
||||
kilowatt: Conversion<Number, T = Number>,
|
||||
megawatt: Conversion<Number, T = Number>,
|
||||
gigawatt: Conversion<Number, T = Number>,
|
||||
terawatt: Conversion<Number, T = Number>,
|
||||
btu: Conversion<Number, T = Number>,
|
||||
hour: Conversion<Number, T = Number>,
|
||||
SI<Number>: Units<Number>,
|
||||
{
|
||||
let entity_id = EntityId(Domain::Sensor, object_id);
|
||||
|
||||
let (signal, task1) =
|
||||
StateObject::<HomeAssistantState<V>, PowerSensorAttributes, Py<PyAny>>::signal(
|
||||
StateObject::<HomeAssistantState<Number>, PowerSensorAttributes, Py<PyAny>>::signal(
|
||||
py,
|
||||
home_assistant,
|
||||
entity_id,
|
||||
|
||||
Reference in New Issue
Block a user