This class shouldn't have the word "Immutable" in the name, because it doesn't guarantee immutability (the delegate can mutate). I think "View" is a better and sufficient descriptor.