rustc_mir_transform

Module lint_tail_expr_drop_order

Source

Structs§

Enums§

Functions§

  • Assign names for anonymous or temporary values for diagnosis
  • Extract binding names if available for diagnosis
  • Returns the list of types with a β€œpotentially sigificant” that may be dropped by dropping a value of type ty.
  • Check if a moved place at idx is a part of a BID. The use of this check is that we will consider drops on these as a drop of the overall BID and, thus, we can exclude it from the diagnosis.
  • run_lint πŸ”’
    The core of the lint tail-expr-drop-order
  • An additional filter to exclude well-known types from the ecosystem because their drops are trivial. This returns additional types to check if the drops are delegated to those. A typical example is hashbrown::HashMap<K, V>, whose drop is delegated to K and V.
  • ty_dtor_span πŸ”’
    Extract the span of the custom destructor of a type especially the span of the impl Drop header or its entire block when we are working with current local crate.