diff --git a/src/Compilers/Core/Portable/Symbols/IAliasSymbol.cs b/src/Compilers/Core/Portable/Symbols/IAliasSymbol.cs index 6ab1718492764..65e3d9017ef8c 100644 --- a/src/Compilers/Core/Portable/Symbols/IAliasSymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/IAliasSymbol.cs @@ -7,6 +7,10 @@ namespace Microsoft.CodeAnalysis /// /// Represents a using alias (Imports alias in Visual Basic). /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// public interface IAliasSymbol : ISymbol { /// diff --git a/src/Compilers/Core/Portable/Symbols/IArrayTypeSymbol.cs b/src/Compilers/Core/Portable/Symbols/IArrayTypeSymbol.cs index 20efddede89d3..d83382c79891a 100644 --- a/src/Compilers/Core/Portable/Symbols/IArrayTypeSymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/IArrayTypeSymbol.cs @@ -8,6 +8,10 @@ namespace Microsoft.CodeAnalysis /// /// Represents an array. /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// public interface IArrayTypeSymbol : ITypeSymbol { /// diff --git a/src/Compilers/Core/Portable/Symbols/IAssemblySymbol.cs b/src/Compilers/Core/Portable/Symbols/IAssemblySymbol.cs index f634e928ed319..d1d13f4b31675 100644 --- a/src/Compilers/Core/Portable/Symbols/IAssemblySymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/IAssemblySymbol.cs @@ -8,6 +8,10 @@ namespace Microsoft.CodeAnalysis /// /// Represents a .NET assembly, consisting of one or more modules. /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// public interface IAssemblySymbol : ISymbol { /// diff --git a/src/Compilers/Core/Portable/Symbols/IDynamicTypeSymbol.cs b/src/Compilers/Core/Portable/Symbols/IDynamicTypeSymbol.cs index 11a8a6b2ecbed..c5391dcc1fa38 100644 --- a/src/Compilers/Core/Portable/Symbols/IDynamicTypeSymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/IDynamicTypeSymbol.cs @@ -7,6 +7,10 @@ namespace Microsoft.CodeAnalysis /// /// Represents the 'dynamic' type in C#. /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// public interface IDynamicTypeSymbol : ITypeSymbol { } diff --git a/src/Compilers/Core/Portable/Symbols/IErrorTypeSymbol.cs b/src/Compilers/Core/Portable/Symbols/IErrorTypeSymbol.cs index 38a510a129c93..0d578a07172fd 100644 --- a/src/Compilers/Core/Portable/Symbols/IErrorTypeSymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/IErrorTypeSymbol.cs @@ -11,6 +11,10 @@ namespace Microsoft.CodeAnalysis /// of an error. For example, if a field is declared "Foo x;", and the type "Foo" cannot be /// found, an IErrorTypeSymbol is returned when asking the field "x" what it's type is. /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// public interface IErrorTypeSymbol : INamedTypeSymbol { /// diff --git a/src/Compilers/Core/Portable/Symbols/IEventSymbol.cs b/src/Compilers/Core/Portable/Symbols/IEventSymbol.cs index f72befcd9b8ca..90209caf9704f 100644 --- a/src/Compilers/Core/Portable/Symbols/IEventSymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/IEventSymbol.cs @@ -8,6 +8,10 @@ namespace Microsoft.CodeAnalysis /// /// Represents an event. /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// public interface IEventSymbol : ISymbol { /// diff --git a/src/Compilers/Core/Portable/Symbols/IFieldSymbol.cs b/src/Compilers/Core/Portable/Symbols/IFieldSymbol.cs index 4cb84e127ed84..8c96b9d35aee7 100644 --- a/src/Compilers/Core/Portable/Symbols/IFieldSymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/IFieldSymbol.cs @@ -8,6 +8,10 @@ namespace Microsoft.CodeAnalysis /// /// Represents a field in a class, struct or enum. /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// public interface IFieldSymbol : ISymbol { /// diff --git a/src/Compilers/Core/Portable/Symbols/ILabelSymbol.cs b/src/Compilers/Core/Portable/Symbols/ILabelSymbol.cs index 5838e697a408a..7646318c33913 100644 --- a/src/Compilers/Core/Portable/Symbols/ILabelSymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/ILabelSymbol.cs @@ -7,6 +7,10 @@ namespace Microsoft.CodeAnalysis /// /// Represents a label in method body /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// public interface ILabelSymbol : ISymbol { /// diff --git a/src/Compilers/Core/Portable/Symbols/ILocalSymbol.cs b/src/Compilers/Core/Portable/Symbols/ILocalSymbol.cs index 6e4485b175be6..4e44b60152d93 100644 --- a/src/Compilers/Core/Portable/Symbols/ILocalSymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/ILocalSymbol.cs @@ -5,6 +5,10 @@ namespace Microsoft.CodeAnalysis /// /// Represents a local variable in method body. /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// public interface ILocalSymbol : ISymbol { /// diff --git a/src/Compilers/Core/Portable/Symbols/IMethodSymbol.cs b/src/Compilers/Core/Portable/Symbols/IMethodSymbol.cs index 8cbc3c80bccc2..bea10cc04293c 100644 --- a/src/Compilers/Core/Portable/Symbols/IMethodSymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/IMethodSymbol.cs @@ -9,6 +9,10 @@ namespace Microsoft.CodeAnalysis /// Represents a method or method-like symbol (including constructor, /// destructor, operator, or property/event accessor). /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// public interface IMethodSymbol : ISymbol { /// diff --git a/src/Compilers/Core/Portable/Symbols/IModuleSymbol.cs b/src/Compilers/Core/Portable/Symbols/IModuleSymbol.cs index 6b99bfcd765a0..82966f661c500 100644 --- a/src/Compilers/Core/Portable/Symbols/IModuleSymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/IModuleSymbol.cs @@ -8,6 +8,10 @@ namespace Microsoft.CodeAnalysis /// /// Represents a module within an assembly. Every assembly contains one or more modules. /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// public interface IModuleSymbol : ISymbol { /// diff --git a/src/Compilers/Core/Portable/Symbols/INamedTypeSymbol.cs b/src/Compilers/Core/Portable/Symbols/INamedTypeSymbol.cs index 989a338f3455c..341d6cef31713 100644 --- a/src/Compilers/Core/Portable/Symbols/INamedTypeSymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/INamedTypeSymbol.cs @@ -8,6 +8,10 @@ namespace Microsoft.CodeAnalysis /// /// Represents a type other than an array, a pointer, a type parameter. /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// public interface INamedTypeSymbol : ITypeSymbol { /// diff --git a/src/Compilers/Core/Portable/Symbols/INamespaceOrTypeSymbol.cs b/src/Compilers/Core/Portable/Symbols/INamespaceOrTypeSymbol.cs index 9f117d6d9824c..5dbfa596ea8a2 100644 --- a/src/Compilers/Core/Portable/Symbols/INamespaceOrTypeSymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/INamespaceOrTypeSymbol.cs @@ -9,6 +9,10 @@ namespace Microsoft.CodeAnalysis /// /// Represents either a namespace or a type. /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// public interface INamespaceOrTypeSymbol : ISymbol { /// diff --git a/src/Compilers/Core/Portable/Symbols/INamespaceSymbol.cs b/src/Compilers/Core/Portable/Symbols/INamespaceSymbol.cs index dc186b3d49473..01e206b788678 100644 --- a/src/Compilers/Core/Portable/Symbols/INamespaceSymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/INamespaceSymbol.cs @@ -9,6 +9,10 @@ namespace Microsoft.CodeAnalysis /// /// Represents a namespace. /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// public interface INamespaceSymbol : INamespaceOrTypeSymbol { /// diff --git a/src/Compilers/Core/Portable/Symbols/IParameterSymbol.cs b/src/Compilers/Core/Portable/Symbols/IParameterSymbol.cs index 40088f1046f77..2f855faa072e2 100644 --- a/src/Compilers/Core/Portable/Symbols/IParameterSymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/IParameterSymbol.cs @@ -9,6 +9,10 @@ namespace Microsoft.CodeAnalysis /// /// Represents a parameter of a method or property. /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// public interface IParameterSymbol : ISymbol { /// diff --git a/src/Compilers/Core/Portable/Symbols/IPointerTypeSymbol.cs b/src/Compilers/Core/Portable/Symbols/IPointerTypeSymbol.cs index 5f044f6870c64..a67f15bcaf245 100644 --- a/src/Compilers/Core/Portable/Symbols/IPointerTypeSymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/IPointerTypeSymbol.cs @@ -9,6 +9,10 @@ namespace Microsoft.CodeAnalysis /// Represents a pointer type such as "int *". Pointer types /// are used only in unsafe code. /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// public interface IPointerTypeSymbol : ITypeSymbol { /// diff --git a/src/Compilers/Core/Portable/Symbols/IPreprocessingSymbol.cs b/src/Compilers/Core/Portable/Symbols/IPreprocessingSymbol.cs index 13af362a83875..2b46d9dac704b 100644 --- a/src/Compilers/Core/Portable/Symbols/IPreprocessingSymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/IPreprocessingSymbol.cs @@ -5,6 +5,10 @@ namespace Microsoft.CodeAnalysis /// /// Represents a preprocessing conditional compilation symbol. /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// public interface IPreprocessingSymbol : ISymbol { } diff --git a/src/Compilers/Core/Portable/Symbols/IPropertySymbol.cs b/src/Compilers/Core/Portable/Symbols/IPropertySymbol.cs index a42ff4a16e8d1..b4be1b3fbe4b6 100644 --- a/src/Compilers/Core/Portable/Symbols/IPropertySymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/IPropertySymbol.cs @@ -8,6 +8,10 @@ namespace Microsoft.CodeAnalysis /// /// Represents a property or indexer. /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// public interface IPropertySymbol : ISymbol { /// diff --git a/src/Compilers/Core/Portable/Symbols/IRangeVariableSymbol.cs b/src/Compilers/Core/Portable/Symbols/IRangeVariableSymbol.cs index 6ec852e26833c..18d26e6b149f3 100644 --- a/src/Compilers/Core/Portable/Symbols/IRangeVariableSymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/IRangeVariableSymbol.cs @@ -7,6 +7,10 @@ namespace Microsoft.CodeAnalysis /// /// Represents a range variable in a query expression. /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// public interface IRangeVariableSymbol : ISymbol { } diff --git a/src/Compilers/Core/Portable/Symbols/ISymbol.cs b/src/Compilers/Core/Portable/Symbols/ISymbol.cs index 0d6f520aec81b..a5cbaf266fb64 100644 --- a/src/Compilers/Core/Portable/Symbols/ISymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/ISymbol.cs @@ -13,6 +13,10 @@ namespace Microsoft.CodeAnalysis /// Represents a symbol (namespace, class, method, parameter, etc.) /// exposed by the compiler. /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// [InternalImplementationOnly] public interface ISymbol : IEquatable { diff --git a/src/Compilers/Core/Portable/Symbols/ISynthesizedMethodBodyImplementationSymbol.cs b/src/Compilers/Core/Portable/Symbols/ISynthesizedMethodBodyImplementationSymbol.cs index 196052caeefec..6b2a06e35dfaa 100644 --- a/src/Compilers/Core/Portable/Symbols/ISynthesizedMethodBodyImplementationSymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/ISynthesizedMethodBodyImplementationSymbol.cs @@ -5,6 +5,10 @@ namespace Microsoft.CodeAnalysis /// /// Synthesized symbol that implements a method body feature (iterator, async, lambda, etc.) /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// internal interface ISynthesizedMethodBodyImplementationSymbol { /// diff --git a/src/Compilers/Core/Portable/Symbols/ITypeParameterSymbol.cs b/src/Compilers/Core/Portable/Symbols/ITypeParameterSymbol.cs index 41b2da09d309e..5a56c4ef83798 100644 --- a/src/Compilers/Core/Portable/Symbols/ITypeParameterSymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/ITypeParameterSymbol.cs @@ -7,6 +7,10 @@ namespace Microsoft.CodeAnalysis /// /// Represents a type parameter in a generic type or generic method. /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// public interface ITypeParameterSymbol : ITypeSymbol { /// diff --git a/src/Compilers/Core/Portable/Symbols/ITypeSymbol.cs b/src/Compilers/Core/Portable/Symbols/ITypeSymbol.cs index eca72d193d4de..e6f96210c9165 100644 --- a/src/Compilers/Core/Portable/Symbols/ITypeSymbol.cs +++ b/src/Compilers/Core/Portable/Symbols/ITypeSymbol.cs @@ -4,6 +4,13 @@ namespace Microsoft.CodeAnalysis { + /// + /// Represents a type. + /// + /// + /// This interface is reserved for implementation by its associated APIs. We reserve the right to + /// change it in the future. + /// public interface ITypeSymbol : INamespaceOrTypeSymbol { ///