def METHOD_NAME(self) -> float:
    """Return the filament diameter that the machine requires.
    If the machine has no requirement for the diameter, -1 is returned.
    :return: The filament diameter for the printer
    """
    context = PropertyEvaluationContext(self)
    context.context["evaluate_from_container_index"] = _ContainerIndexes.Variant
    return float(self.getProperty("material_diameter", "value", context = context))