Interestingly, I had originally implemented the is_in method on references using the Or expression but I later found it preferable to use the In expression. However, in order to support a wider range of backends, I'm fine with reverting to the Or expression.
Thanks for suggesting to test the corner case when passing an empty list. I made sure to write the corresponding test which then failed when just uring the Or expression. So, when the given argument to the is_in method is an empty list, it simply returns False which seems to work fine.
Interestingly, I had originally implemented the is_in method on references using the Or expression but I later found it preferable to use the In expression. However, in order to support a wider range of backends, I'm fine with reverting to the Or expression.
Thanks for suggesting to test the corner case when passing an empty list. I made sure to write the corresponding test which then failed when just uring the Or expression. So, when the given argument to the is_in method is an empty list, it simply returns False which seems to work fine.
The branch has been updated with these changes.