diff --git a/ICSharpCode.NRefactory/TypeSystem/IAnnotatable.cs b/ICSharpCode.NRefactory/TypeSystem/IAnnotatable.cs index e6552b79bf..c7f8e7c238 100644 --- a/ICSharpCode.NRefactory/TypeSystem/IAnnotatable.cs +++ b/ICSharpCode.NRefactory/TypeSystem/IAnnotatable.cs @@ -21,7 +21,8 @@ namespace ICSharpCode.NRefactory } /// - /// Gets an typed annotation.. + /// Gets the first annotation of the specified type. + /// Returns null if no matching annotation exists. /// /// /// The type of the annotation. @@ -29,7 +30,8 @@ namespace ICSharpCode.NRefactory T Annotation () where T: class; /// - /// Gets an annotation. + /// Gets the first annotation of the specified type. + /// Returns null if no matching annotation exists. /// /// /// The type of the annotation. @@ -45,15 +47,23 @@ namespace ICSharpCode.NRefactory void AddAnnotation (object annotation); /// - /// Removes an annotation from this instance. + /// Removes all annotations of the specified type. /// /// - /// The annotation to remove. + /// The type of the annotations to remove. /// void RemoveAnnotations () where T : class; + + /// + /// Removes all annotations of the specified type. + /// + /// + /// The type of the annotations to remove. + /// + void RemoveAnnotations(Type type); } - public abstract class AbstractAnnotatable + public abstract class AbstractAnnotatable : IAnnotatable { // Annotations: points either null (no annotations), to the single annotation, // or to an AnnotationList.