How to shadow Object.Equals() method in a Module?

Viewed 498

Maybe the title of the question is not the proper, because the methods in a module cannot be shadowed, but In essence I want to shadow a base member declaring it again, and hidding it without loosing the opportunity to call it and return the proper value.

Normally I do this for Classes:

<EditorBrowsable(EditorBrowsableState.Never)>
Public Shadows Function Equals(ByVal obj As Object) As Boolean
    Return MyBase.Equals(obj)
End Function

And this for Structures:

<EditorBrowsable(EditorBrowsableState.Never)>
Public Shadows Function Equals(ByVal obj As Object) As Boolean
    Return Object.Equals(obj, Me)
End Function

The problem I find trying to reproduce this behavior with a module, is what I should use to fill the interrogant argument in the example below, since I can't use Me, the module name, or a constructor, I understand it, but what I need to use then?.

Module TestModule

    <EditorBrowsable(EditorBrowsableState.Never)>
    Public Function Equals(ByVal obj As Object) As Boolean
        Return Object.Equals(obj, ?)
    End Function

End Module
2 Answers
Related