The BorrowGraph stores information sufficient to determine whether the instruction
of a bytecode instruction that interacts with references is memory safe.
The EdgeType is either weak or strong. A weak edge represents imprecise information
on the path along which the borrow takes place. A strong edge is precise.