Skip to content

Instantly share code, notes, and snippets.

@maca88
Last active June 4, 2017 10:35
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save maca88/74788d6839599a29680138db67658dab to your computer and use it in GitHub Desktop.
Save maca88/74788d6839599a29680138db67658dab to your computer and use it in GitHub Desktop.
AsyncGenerator draft xml configuration
<Configuration>
<Solution path="..\..\MySolution.sln">
<RunInParallel>true</RunInParallel>
<ApplyChanges>true</ApplyChanges>
<Projects>
<Project name="MyProject">
<Analyzation>
<MethodConversion default="Unknown">
<Method name="MethodName" containingType="SomeType">ToAsync</Method>
<Method hasAttribute="ObsoleteAttribute">Ignore</Method>
<Method containingNamespace="Some.Namespace">Smart</Method>
<Method rule="PublicMethod">Smart</Method>
</MethodConversion>
<TypeConversion default="Unknown">
<Method name="TypeName">NewType</Method>
<Method hasAttribute="ObsoleteAttribute">Ignore</Method>
<Method containingNamespace="Some.Namespace">Ignore</Method>
<Method rule="PublicType">NewType</Method>
</TypeConversion>
<SearchForAsyncCounterparts default="true">
<Method name="MethodName" containingType="SomeType">false</Method>
<Method hasAttribute="ObsoleteAttribute" containingNamespace="Some.Namespace">false</Method>
</SearchForAsyncCounterparts>
<CallForwarding>true</CallForwarding>
<CancellationTokens>
<Guards>true</Guards>
<ParameterGeneration default="Parameter">
<MethodInfo containingNamespace="Some.Namespace" containingType="MyClass">DefaultParameter</MethodInfo>
<MethodInfo rule="PublicMethod">DefaultParameter</MethodInfo>
<MethodInfo anyInterfaceRule="PublicMethod">DefaultParameter</MethodInfo>
</ParameterGeneration>
<RequiresCancellationToken default="null">
<Method name="MethodName" containingType="SomeType">false</Method>
<Method rule="PublicMethod">true</Method>
</RequiresCancellationToken>
</CancellationTokens>
<ScanMethodBody>true</ScanMethodBody>
</Analyzation>
<Transformation>
<AsyncLock namespace="MyNamespace.Internal" type="AsyncLock" method="LockAsync" />
<LocalFunctions>true</LocalFunctions>
<ConfigureAwaitArgument>false</ConfigureAwaitArgument>
</Transformation>
<Plugins>
<Plugin fullType="MyNameSpace.MyPlugin" />
</Plugins>
</Project>
</Projects>
</Solution>
<MethodRules>
<MethodRule name="PublicMethod">
<Filters>
<Filter containingNamespace="Some.Namespace" containingType="MyType" />
<Filter hasAttribute="ObsoleteAttribute" />
</Filters>
</MethodRule>
</MethodRules>
<TypeRules>
<TypeRule name="PublicType">
<Filters>
<Filter containingNamespace="Some.Namespace" containingType="ParentType" />
<Filter hasAttribute="ObsoleteAttribute" />
</Filters>
</TypeRule>
</TypeRules>
</Configuration>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment