2010-06-23 Marek Safar <marek.safar@gmail.com>
[mono.git] / mcs / docs / ecma334 / 20.1.1.xml
1 <?xml version="1.0"?>
2 <clause number="20.1.1" title="Interface modifiers">
3   <paragraph>An <non_terminal where="20.1">interface-declaration</non_terminal> may optionally include a sequence of interface modifiers: <grammar_production><name><non_terminal where="20.1.1">interface-modifier</non_terminal>s</name> : <rhs><non_terminal where="20.1.1">interface-modifier</non_terminal></rhs><rhs><non_terminal where="20.1.1">interface-modifiers</non_terminal><non_terminal where="20.1.1">interface-modifier</non_terminal></rhs></grammar_production><grammar_production><name><non_terminal where="20.1.1">interface-modifier</non_terminal></name> : <rhs><keyword>new</keyword></rhs><rhs><keyword>public</keyword></rhs><rhs><keyword>protected</keyword></rhs><rhs><keyword>internal</keyword></rhs><rhs><keyword>private</keyword></rhs></grammar_production></paragraph>
4   <paragraph>It is a compile-time error for the same modifier to appear multiple times in an interface declaration. </paragraph>
5   <paragraph>The new modifier is only permitted on nested interfaces. It specifies that the interface hides an inherited member by the same name, as described in <hyperlink>17.2.2</hyperlink>. </paragraph>
6   <paragraph>The public, protected, internal, and private modifiers control the accessibility of the interface. Depending on the context in which the interface declaration occurs, only some of these modifiers may be permitted (<hyperlink>10.5.1</hyperlink>). </paragraph>
7 </clause>