ReSharper lets you use any code symbols (classes, methods, properties, fields, variables etc.) before you
declare them. When ReSharper detects an undeclared symbol, it suggests several
quick-fixes and
context actions for generating the corresponding symbol based on the usage, and then smartly
adjust the declaration according to the usage context:
Tip
You can set up common code generation options on the Code Editing | Members Generation page of ReSharper options.
For example, if you create a method from usage, ReSharper will not only create a method,
but also detect its return type and types of its parameters:
Tip
Depending on your settings, in the bodies of generated implementations ReSharper throws new NotImplementedException(), returns default value, or puts code that will not compile. For more information, see Code Editing | Members Generation page of ReSharper options.
For additional examples of how ReSharper creates code symbols from usages, see Undefined variable and Undefined method call samples in the Examples of Quick-Fixes.
