Why is there no "external" access modifier?
<p>Maybe I'm missing something but shouldn't C# have an external access modifier for methods? Ie an modifier that make an method public but only for other classes, ie the the method cannot be called by the class itself?</p>

<p>Wouldn't that be useful for things like public methods that do locking to ensure that the lock isn't reentred from within the class?</p>
