Skip to main content

merge_param_policy

Function merge_param_policy 

Source
pub(crate) fn merge_param_policy(
    markers: &[ParamMarker],
    keyword: Option<bool>,
    param: &str,
    method_list: bool,
    ty: &Type,
) -> Result<Option<bool>>
Expand description

Combine a parameter’s Checked<T> / Unchecked<T> marker with its keyword decision (keyword: the per-parameter preconditions / no_preconditions, or the method’s preconditions(p) / no_preconditions(p)). A marker is a type, not one more flag of the pair, so a marker and a keyword that disagree are an error, as a Call marker and call = ... are; agreeing ones are one decision. The error points at ty, the parameter’s type as written.