static public void PivotLeft <LEFT_TYPE, RIGHT_TYPE>(this BidirectionalDictionary <LEFT_TYPE, RIGHT_TYPE> item, LEFT_TYPE old_value, LEFT_TYPE new_value) { RIGHT_TYPE right; if (item.TryGetValueByLeft(old_value, out right)) { item.Update(new_value, right); } }
static public RIGHT_TYPE GetValueByLeft <LEFT_TYPE, RIGHT_TYPE>(this BidirectionalDictionary <LEFT_TYPE, RIGHT_TYPE> item, LEFT_TYPE left, RIGHT_TYPE default_value) { RIGHT_TYPE right; if (item.TryGetValueByLeft(left, out right) == false) { right = default_value; } return(right); }