lumix.utils.orm.LXNumeric¶
- class lumix.utils.orm.LXNumeric(*args, **kwargs)[source]¶
Structural protocol for numeric types with optimization operations.
Defines the interface for types that can be used as numeric coefficients in optimization expressions. Supports addition, multiplication, and conversion to float.
This protocol allows type-safe usage of various numeric types (int, float, Decimal, Fraction, etc.) in optimization expressions.
Examples
Standard numeric types satisfy the protocol:
x: LXNumeric = 5 # int satisfies protocol y: LXNumeric = 3.14 # float satisfies protocol
Custom numeric types can also satisfy it:
from decimal import Decimal z: LXNumeric = Decimal("10.5") # Decimal satisfies protocol
Note
This is a structural Protocol. Any type with the required methods automatically satisfies it without explicit inheritance.
- __init__(*args, **kwargs)¶
Methods
__init__(*args, **kwargs)- __init__(*args, **kwargs)¶