Machinations

Classes | Namespaces | Enumerations | Functions | Variables
Annotations.cs File Reference

## Classes

class | Machinations.Annotations.CanBeNullAttribute
| Indicates that the value of the marked element could be `null` sometimes, so the check for `null` is necessary before its usage. More...
class | Machinations.Annotations.NotNullAttribute
| Indicates that the value of the marked element could never be `null`. More...
class | Machinations.Annotations.ItemNotNullAttribute
| Can be appplied to symbols of types derived from IEnumerable as well as to symbols of Task and Lazy classes to indicate that the value of a collection item, of the Task.Result property or of the Lazy.Value property can never be null. More...
class | Machinations.Annotations.ItemCanBeNullAttribute
| Can be appplied to symbols of types derived from IEnumerable as well as to symbols of Task and Lazy classes to indicate that the value of a collection item, of the Task.Result property or of the Lazy.Value property can be null. More...
class | StringFormatMethodAttribute
class | ValueProviderAttribute
| For a parameter that is expected to be one of the limited set of values. Specify fields of which type should be used as values for this parameter. More...
class | InvokerParameterNameAttribute
| Indicates that the function argument should be string literal and match one of the parameters of the caller function. For example, ReSharper annotates the parameter of System.ArgumentNullException. More...
class | NotifyPropertyChangedInvocatorAttribute
class | ContractAnnotationAttribute
| Describes dependency between method input and output. More...
class | LocalizationRequiredAttribute
| Indicates that marked element should be localized or not. More...
class | CannotApplyEqualityOperatorAttribute
| Indicates that the value of the marked type (or its derivatives) cannot be compared using '==' or '!=' operators and `Equals()` should be used instead. However, using '==' or '!=' for comparison with `null` is always permitted. More...
class | BaseTypeRequiredAttribute
| When applied to a target attribute, specifies a requirement for any type marked with the target attribute to implement or inherit specific type or types. More...
class | UsedImplicitlyAttribute
| Indicates that the marked symbol is used implicitly (e.g. via reflection, in external library), so this symbol will not be marked as unused (as well as by other usage inspections). More...
class | MeansImplicitUseAttribute
| Should be used on attributes and causes ReSharper to not mark symbols marked with such attributes as unused (as well as by other usage inspections) More...
class | PublicAPIAttribute
| This attribute is intended to mark publicly available API which should not be removed and so is treated as used. More...
class | InstantHandleAttribute
| Tells code analysis engine if the parameter is completely handled when the invoked method is on stack. If the parameter is a delegate, indicates that delegate is executed while the method is executed. If the parameter is an enumerable, indicates that it is enumerated while the method is executed. More...
class | PureAttribute
| Indicates that a method does not make any observable state changes. The same as `System.Diagnostics.Contracts.PureAttribute`. More...
class | MustUseReturnValueAttribute
| Indicates that the return value of method invocation must be used. More...
class | ProvidesContextAttribute
| Indicates the type member or parameter of some type, that should be used instead of all other ways to get the value that type. This annotation is useful when you have some "context" value evaluated and stored somewhere, meaning that all other ways to get this value must be consolidated with existing one. More...
class | PathReferenceAttribute
| Indicates that a parameter is a path to a file or a folder within a web project. Path can be relative or absolute, starting from web root (~). More...
class | SourceTemplateAttribute
| An extension method marked with this attribute is processed by ReSharper code completion as a 'Source Template'. When extension method is completed over some expression, it's source code is automatically expanded like a template at call site. More...
class | MacroAttribute
| Allows specifying a macro for a parameter of a source template. More...
class | AspMvcAreaMasterLocationFormatAttribute
class | AspMvcAreaPartialViewLocationFormatAttribute
class | AspMvcAreaViewLocationFormatAttribute
class | AspMvcMasterLocationFormatAttribute
class | AspMvcPartialViewLocationFormatAttribute
class | AspMvcViewLocationFormatAttribute
class | AspMvcActionAttribute
| ASP.NET MVC attribute. If applied to a parameter, indicates that the parameter is an MVC action. If applied to a method, the MVC action name is calculated implicitly from the context. Use this attribute for custom wrappers similar to `System.Web.Mvc.Html.ChildActionExtensions.RenderAction(HtmlHelper, String)`. More...
class | AspMvcAreaAttribute
| ASP.NET MVC attribute. Indicates that a parameter is an MVC area. Use this attribute for custom wrappers similar to `System.Web.Mvc.Html.ChildActionExtensions.RenderAction(HtmlHelper, String)`. More...
class | AspMvcControllerAttribute
| ASP.NET MVC attribute. If applied to a parameter, indicates that the parameter is an MVC controller. If applied to a method, the MVC controller name is calculated implicitly from the context. Use this attribute for custom wrappers similar to `System.Web.Mvc.Html.ChildActionExtensions.RenderAction(HtmlHelper, String, String)`. More...
class | AspMvcMasterAttribute
| ASP.NET MVC attribute. Indicates that a parameter is an MVC Master. Use this attribute for custom wrappers similar to `System.Web.Mvc.Controller.View(String, String)`. More...
class | AspMvcModelTypeAttribute
| ASP.NET MVC attribute. Indicates that a parameter is an MVC model type. Use this attribute for custom wrappers similar to `System.Web.Mvc.Controller.View(String, Object)`. More...
class | AspMvcPartialViewAttribute
| ASP.NET MVC attribute. If applied to a parameter, indicates that the parameter is an MVC partial view. If applied to a method, the MVC partial view name is calculated implicitly from the context. Use this attribute for custom wrappers similar to `System.Web.Mvc.Html.RenderPartialExtensions.RenderPartial(HtmlHelper, String)`. More...
class | AspMvcSuppressViewErrorAttribute
| ASP.NET MVC attribute. Allows disabling inspections for MVC views within a class or a method. More...
class | AspMvcDisplayTemplateAttribute
| ASP.NET MVC attribute. Indicates that a parameter is an MVC display template. Use this attribute for custom wrappers similar to `System.Web.Mvc.Html.DisplayExtensions.DisplayForModel(HtmlHelper, String)`. More...
class | AspMvcEditorTemplateAttribute
| ASP.NET MVC attribute. Indicates that a parameter is an MVC editor template. Use this attribute for custom wrappers similar to `System.Web.Mvc.Html.EditorExtensions.EditorForModel(HtmlHelper, String)`. More...
class | AspMvcTemplateAttribute
| ASP.NET MVC attribute. Indicates that a parameter is an MVC template. Use this attribute for custom wrappers similar to `System.ComponentModel.DataAnnotations.UIHintAttribute(System.String)`. More...
class | AspMvcViewAttribute
| ASP.NET MVC attribute. If applied to a parameter, indicates that the parameter is an MVC view component. If applied to a method, the MVC view name is calculated implicitly from the context. Use this attribute for custom wrappers similar to `System.Web.Mvc.Controller.View(Object)`. More...
class | AspMvcViewComponentAttribute
| ASP.NET MVC attribute. If applied to a parameter, indicates that the parameter is an MVC view component name. More...
class | AspMvcViewComponentViewAttribute
| ASP.NET MVC attribute. If applied to a parameter, indicates that the parameter is an MVC view component view. If applied to a method, the MVC view component view name is default. More...
class | AspMvcActionSelectorAttribute
| ASP.NET MVC attribute. When applied to a parameter of an attribute, indicates that this parameter is an MVC action name. More...
class | HtmlElementAttributesAttribute
class | HtmlAttributeValueAttribute
class | RazorSectionAttribute
| Razor attribute. Indicates that a parameter or a method is a Razor section. Use this attribute for custom wrappers similar to `System.Web.WebPages.WebPageBase.RenderSection(String)`. More...
class | CollectionAccessAttribute
| Indicates how method, constructor invocation or property access over collection type affects content of the collection. More...
class | AssertionMethodAttribute
| Indicates that the marked method is assertion method, i.e. it halts control flow if one of the conditions is satisfied. To set the condition, mark one of the parameters with AssertionConditionAttribute attribute. More...
class | AssertionConditionAttribute
| Indicates the condition parameter of the assertion method. The method itself should be marked by AssertionMethodAttribute attribute. The mandatory argument of the attribute is the assertion type. More...
class | TerminatesProgramAttribute
| Indicates that the marked method unconditionally terminates control flow execution. For example, it could unconditionally throw exception. More...
class | LinqTunnelAttribute
| Indicates that method is pure LINQ method, with postponed enumeration (like Enumerable.Select, .Where). This annotation allows inference of [InstantHandle] annotation for parameters of delegate type by analyzing LINQ method chains. More...
class | NoEnumerationAttribute
| Indicates that IEnumerable, passed as parameter, is not enumerated. More...
class | RegexPatternAttribute
| Indicates that parameter is regular expression pattern. More...
class | XamlItemsControlAttribute
| XAML attribute. Indicates the type that has `ItemsSource` property and should be treated as `ItemsControl`-derived type, to enable inner items `DataContext` type resolve. More...
class | XamlItemBindingOfItemsControlAttribute
| XAML attribute. Indicates the property of some `BindingBase`-derived type, that is used to bind some item of `ItemsControl`-derived type. This annotation will enable the `DataContext` type resolve for XAML bindings for such properties. More...
class | AspChildControlTypeAttribute
class | AspDataFieldAttribute
class | AspDataFieldsAttribute
class | AspMethodPropertyAttribute
class | AspRequiredAttributeAttribute
class | AspTypePropertyAttribute
class | RazorImportNamespaceAttribute
class | RazorInjectionAttribute
class | RazorHelperCommonAttribute
class | RazorLayoutAttribute
class | RazorWriteLiteralMethodAttribute
class | RazorWriteMethodAttribute
class | RazorWriteMethodParameterAttribute
class | NoReorder
| Prevents the Member Reordering feature from tossing members of the marked class. More...

## Namespaces

namespace | Machinations.Annotations

## Enumerations

enum | ImplicitUseKindFlags { ImplicitUseKindFlags.Default = Access | Assign | InstantiatedWithFixedConstructorSignature, ImplicitUseKindFlags.Access = 1, ImplicitUseKindFlags.Assign = 2, ImplicitUseKindFlags.InstantiatedWithFixedConstructorSignature = 4, ImplicitUseKindFlags.InstantiatedNoFixedConstructorSignature = 8
}
enum | ImplicitUseTargetFlags { ImplicitUseTargetFlags.Default = Itself, ImplicitUseTargetFlags.Itself = 1, ImplicitUseTargetFlags.Members = 2, ImplicitUseTargetFlags.WithMembers = Itself | Members }
| Specify what is considered used implicitly when marked with MeansImplicitUseAttribute or UsedImplicitlyAttribute. More...
enum | CollectionAccessType { CollectionAccessType.None = 0, CollectionAccessType.Read = 1, CollectionAccessType.ModifyExistingContent = 2, CollectionAccessType.UpdatedContent = ModifyExistingContent | 4 }
enum | AssertionConditionType { AssertionConditionType.IS_TRUE = 0, AssertionConditionType.IS_FALSE = 1, AssertionConditionType.IS_NULL = 2, AssertionConditionType.IS_NOT_NULL = 3 }
| Specifies assertion type. If the assertion method argument satisfies the condition, then the execution continues. Otherwise, execution is assumed to be halted. More...

## Functions

**void | Foo ()
Property</c ></item > *< item >< c > | NotifyChanged ((VM x)=&gt;x.Property)</c ></item > *< item >< c >SetProperty(ref myField

## Variables

***</code > *Examples of generated | notifications
| Indicates that the method is contained in a type that implements `System.ComponentModel.INotifyPropertyChanged` interface and this method is used to notify that some property value changed. More...
Property</c ></item > *< item >< c > | value

## Enumeration Type Documentation

## ◆ AssertionConditionType

enum AssertionConditionType

strong

Specifies assertion type. If the assertion method argument satisfies the condition, then the execution continues. Otherwise, execution is assumed to be halted.

Enumerator
IS_TRUE | Marked parameter should be evaluated to true.
IS_FALSE | Marked parameter should be evaluated to false.
IS_NULL | Marked parameter should be evaluated to null value.
IS_NOT_NULL | Marked parameter should be evaluated to not null value.

## ◆ CollectionAccessType

enum CollectionAccessType

strong

Enumerator
None | Method does not use or modify content of the collection.
Read | Method only reads content of the collection but does not modify it.
ModifyExistingContent | Method can change content of the collection but does not add new elements.
UpdatedContent | Method can add new elements to the collection.

## ◆ ImplicitUseKindFlags

enum ImplicitUseKindFlags

strong

Enumerator
Default |
Access | Only entity marked with attribute considered used.
Assign | Indicates implicit assignment to a member.
InstantiatedWithFixedConstructorSignature | Indicates implicit instantiation of a type with fixed constructor signature. That means any unused constructor parameters won't be reported as such.
InstantiatedNoFixedConstructorSignature | Indicates implicit instantiation of a type.

## ◆ ImplicitUseTargetFlags

enum ImplicitUseTargetFlags

strong

Specify what is considered used implicitly when marked with MeansImplicitUseAttribute or UsedImplicitlyAttribute.

Enumerator
Default |
Itself |
Members | Members of entity marked with attribute are considered used.
WithMembers | Entity marked with attribute and all its members considered used.

## Function Documentation

## ◆ Foo()

* * void Foo | ( |  | ) |

## ◆ NotifyChanged()

Property</c></item> *<item><c> NotifyChanged | ( | (VM x) | = `&gt; x.Property` | ) |

## Variable Documentation

## ◆ notifications

* * *</code> * Examples of generated notifications

Indicates that the method is contained in a type that implements `System.ComponentModel.INotifyPropertyChanged` interface and this method is used to notify that some property value changed.

The method should be non-static and conform to one of the supported signatures:

- `NotifyChanged(string)`
- `NotifyChanged(params string[])`
- `NotifyChanged{T}(Expression{Func{T}})`
- `NotifyChanged{T,U}(Expression{Func{T,U}})`
- `SetProperty{T}(ref T, T, string)`

public class Foo : INotifyPropertyChanged {
public event PropertyChangedEventHandler PropertyChanged;
[NotifyPropertyChangedInvocator]
protected virtual void NotifyChanged(string propertyName) { ... }
string _name;
public string Name {
get { return _name; }
set { _name = value; NotifyChanged("LastName"); /* Warning

## ◆ value

Property</c></item> *<item><c> value