Skip to content

Gendarme.Rules.Interoperability.Com.ReviewComRegistrationMethodsRule(git)

Sebastien Pouliot edited this page Mar 2, 2011 · 1 revision

ReviewComRegistrationMethodsRule

Assembly: Gendarme.Rules.Interoperability.Com
Version: git

Description

This rule checks the correctness of COM register and unregister methods, i.e. they should not be externally visible and they should be matched (both or none of them should exist ).

Examples

Bad example (public methods):

[ComVisible (true)
class Bad {
    [ComRegisterFunction]
    public void Register ()
    {
    }
    [ComUnregisterFunction]
    public void Unregister ()
    {
    }
}

Bad example (only one of the methods exist)

[ComVisible (true)]
class Bad {
    [ComRegisterFunction]
    public void Register ()
    {
    }
}

Good example:

[ComVisible (true)]
class Good {
    [ComRegisterFunction]
    private void Register ()
    {
    }
    [ComUnregisterFunction]
    private void Unregister ()
    {
    }
}

Source code

You can browse the latest source code of this rule on github.com

Clone this wiki locally