Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
51 changes: 51 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: Build

on:
push:
branches: [ master ]
tags-ignore: [ '**' ]
pull_request:
branches: [ master ]

jobs:
build:
runs-on: windows-latest
permissions:
contents: read
strategy:
matrix:
configuration: [Debug, Release]

steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Configure git line endings
run: git config --global core.autocrlf true

- name: Setup .NET SDK
run: .\init.ps1 -NoRestore
shell: pwsh

- name: Setup NuGet
uses: nuget/setup-nuget@v2
with:
nuget-version: '5.x'

- name: Restore NuGet packages
run: nuget restore StyleCopAnalyzers.sln

- name: Setup MSBuild
uses: microsoft/setup-msbuild@v2

- name: Build solution
run: msbuild StyleCopAnalyzers.sln /p:Configuration=${{ matrix.configuration }} /v:minimal

- name: Upload NuGet packages
if: matrix.configuration == 'Release'
uses: actions/upload-artifact@v4
with:
name: NuGet-Packages
path: StyleCop.Analyzers/StyleCop.Analyzers.CodeFixes/bin/Release/*.nupkg
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ OpenCover.Symbols/
.nuget/NuGet.exe
build/nuget/
*.log
*.binlog

# Visual Studio performance tools
*.psess
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

[![Join the chat at https://gitter.im/DotNetAnalyzers/StyleCopAnalyzers](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/DotNetAnalyzers/StyleCopAnalyzers?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)

[![Build status](https://ci.appveyor.com/api/projects/status/8jw2lq431kgg44jl/branch/master?svg=true)](https://ci.appveyor.com/project/sharwell/stylecopanalyzers/branch/master)
[![Build status](https://github.com/AArnott/StyleCopAnalyzers/workflows/Build/badge.svg)](https://github.com/AArnott/StyleCopAnalyzers/actions)

[![codecov.io](https://codecov.io/github/DotNetAnalyzers/StyleCopAnalyzers/coverage.svg?branch=master)](https://codecov.io/github/DotNetAnalyzers/StyleCopAnalyzers?branch=master)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ private IAddressOfOperationWrapper(IOperation operation)
public IOperation WrappedOperation => this.operation;
public ITypeSymbol Type => this.WrappedOperation.Type;
public IOperation Reference => ReferenceAccessor(this.WrappedOperation);

public static explicit operator IAddressOfOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(IAddressOfOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static IAddressOfOperationWrapper FromOperation(IOperation operation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ private IAnonymousFunctionOperationWrapper(IOperation operation)
public ITypeSymbol Type => this.WrappedOperation.Type;
public IMethodSymbol Symbol => SymbolAccessor(this.WrappedOperation);
public IBlockOperationWrapper Body => IBlockOperationWrapper.FromOperation(BodyAccessor(this.WrappedOperation));

public static explicit operator IAnonymousFunctionOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(IAnonymousFunctionOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static IAnonymousFunctionOperationWrapper FromOperation(IOperation operation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ private IAnonymousObjectCreationOperationWrapper(IOperation operation)
public IOperation WrappedOperation => this.operation;
public ITypeSymbol Type => this.WrappedOperation.Type;
public ImmutableArray<IOperation> Initializers => InitializersAccessor(this.WrappedOperation);

public static explicit operator IAnonymousObjectCreationOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(IAnonymousObjectCreationOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static IAnonymousObjectCreationOperationWrapper FromOperation(IOperation operation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ private IArgumentOperationWrapper(IOperation operation)
public IOperation Value => ValueAccessor(this.WrappedOperation);
public object InConversion => throw new NotImplementedException("Property 'IArgumentOperation.InConversion' has unsupported type 'CommonConversion'");
public object OutConversion => throw new NotImplementedException("Property 'IArgumentOperation.OutConversion' has unsupported type 'CommonConversion'");

public static explicit operator IArgumentOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(IArgumentOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static IArgumentOperationWrapper FromOperation(IOperation operation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ private IArrayCreationOperationWrapper(IOperation operation)
public ITypeSymbol Type => this.WrappedOperation.Type;
public ImmutableArray<IOperation> DimensionSizes => DimensionSizesAccessor(this.WrappedOperation);
public IArrayInitializerOperationWrapper Initializer => IArrayInitializerOperationWrapper.FromOperation(InitializerAccessor(this.WrappedOperation));

public static explicit operator IArrayCreationOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(IArrayCreationOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static IArrayCreationOperationWrapper FromOperation(IOperation operation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ private IArrayElementReferenceOperationWrapper(IOperation operation)
public ITypeSymbol Type => this.WrappedOperation.Type;
public IOperation ArrayReference => ArrayReferenceAccessor(this.WrappedOperation);
public ImmutableArray<IOperation> Indices => IndicesAccessor(this.WrappedOperation);

public static explicit operator IArrayElementReferenceOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(IArrayElementReferenceOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static IArrayElementReferenceOperationWrapper FromOperation(IOperation operation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ private IArrayInitializerOperationWrapper(IOperation operation)
public IOperation WrappedOperation => this.operation;
public ITypeSymbol Type => this.WrappedOperation.Type;
public ImmutableArray<IOperation> ElementValues => ElementValuesAccessor(this.WrappedOperation);

public static explicit operator IArrayInitializerOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(IArrayInitializerOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static IArrayInitializerOperationWrapper FromOperation(IOperation operation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ private IAssignmentOperationWrapper(IOperation operation)
public ITypeSymbol Type => this.WrappedOperation.Type;
public IOperation Target => TargetAccessor(this.WrappedOperation);
public IOperation Value => ValueAccessor(this.WrappedOperation);

public static explicit operator IAssignmentOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(IAssignmentOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static IAssignmentOperationWrapper FromOperation(IOperation operation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ private IAwaitOperationWrapper(IOperation operation)
public IOperation WrappedOperation => this.operation;
public ITypeSymbol Type => this.WrappedOperation.Type;
public IOperation Operation => OperationAccessor(this.WrappedOperation);

public static explicit operator IAwaitOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(IAwaitOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static IAwaitOperationWrapper FromOperation(IOperation operation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ private IBinaryOperationWrapper(IOperation operation)
public bool IsChecked => IsCheckedAccessor(this.WrappedOperation);
public bool IsCompareText => IsCompareTextAccessor(this.WrappedOperation);
public IMethodSymbol OperatorMethod => OperatorMethodAccessor(this.WrappedOperation);

public static explicit operator IBinaryOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(IBinaryOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static IBinaryOperationWrapper FromOperation(IOperation operation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,12 @@ private IBinaryPatternOperationWrapper(IOperation operation)
public object OperatorKind => throw new NotImplementedException("Property 'IBinaryPatternOperation.OperatorKind' has unsupported type 'BinaryOperatorKind'");
public IPatternOperationWrapper LeftPattern => IPatternOperationWrapper.FromOperation(LeftPatternAccessor(this.WrappedOperation));
public IPatternOperationWrapper RightPattern => IPatternOperationWrapper.FromOperation(RightPatternAccessor(this.WrappedOperation));

public static explicit operator IBinaryPatternOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(IBinaryPatternOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public ITypeSymbol InputType => ((IPatternOperationWrapper)this).InputType;
public ITypeSymbol NarrowedType => ((IPatternOperationWrapper)this).NarrowedType;

public static explicit operator IBinaryPatternOperationWrapper(IPatternOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IPatternOperationWrapper(IBinaryPatternOperationWrapper wrapper) => IPatternOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static IBinaryPatternOperationWrapper FromOperation(IOperation operation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ private IBlockOperationWrapper(IOperation operation)
public ITypeSymbol Type => this.WrappedOperation.Type;
public ImmutableArray<IOperation> Operations => OperationsAccessor(this.WrappedOperation);
public ImmutableArray<ILocalSymbol> Locals => LocalsAccessor(this.WrappedOperation);

public static explicit operator IBlockOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(IBlockOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static IBlockOperationWrapper FromOperation(IOperation operation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ private IBranchOperationWrapper(IOperation operation)
public ITypeSymbol Type => this.WrappedOperation.Type;
public ILabelSymbol Target => TargetAccessor(this.WrappedOperation);
public object BranchKind => throw new NotImplementedException("Property 'IBranchOperation.BranchKind' has unsupported type 'BranchKind'");

public static explicit operator IBranchOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(IBranchOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static IBranchOperationWrapper FromOperation(IOperation operation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ private ICaseClauseOperationWrapper(IOperation operation)
public ITypeSymbol Type => this.WrappedOperation.Type;
public object CaseKind => throw new NotImplementedException("Property 'ICaseClauseOperation.CaseKind' has unsupported type 'CaseKind'");
public ILabelSymbol Label => LabelAccessor(this.WrappedOperation);

public static explicit operator ICaseClauseOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(ICaseClauseOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static ICaseClauseOperationWrapper FromOperation(IOperation operation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ private ICatchClauseOperationWrapper(IOperation operation)
public ImmutableArray<ILocalSymbol> Locals => LocalsAccessor(this.WrappedOperation);
public IOperation Filter => FilterAccessor(this.WrappedOperation);
public IBlockOperationWrapper Handler => IBlockOperationWrapper.FromOperation(HandlerAccessor(this.WrappedOperation));

public static explicit operator ICatchClauseOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(ICatchClauseOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static ICatchClauseOperationWrapper FromOperation(IOperation operation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ private ICaughtExceptionOperationWrapper(IOperation operation)

public IOperation WrappedOperation => this.operation;
public ITypeSymbol Type => this.WrappedOperation.Type;

public static explicit operator ICaughtExceptionOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(ICaughtExceptionOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static ICaughtExceptionOperationWrapper FromOperation(IOperation operation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,12 @@ private ICoalesceAssignmentOperationWrapper(IOperation operation)

public IOperation WrappedOperation => this.operation;
public ITypeSymbol Type => this.WrappedOperation.Type;

public static explicit operator ICoalesceAssignmentOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(ICoalesceAssignmentOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public IOperation Target => ((IAssignmentOperationWrapper)this).Target;
public IOperation Value => ((IAssignmentOperationWrapper)this).Value;

public static explicit operator ICoalesceAssignmentOperationWrapper(IAssignmentOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IAssignmentOperationWrapper(ICoalesceAssignmentOperationWrapper wrapper) => IAssignmentOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static ICoalesceAssignmentOperationWrapper FromOperation(IOperation operation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ private ICoalesceOperationWrapper(IOperation operation)
public IOperation Value => ValueAccessor(this.WrappedOperation);
public IOperation WhenNull => WhenNullAccessor(this.WrappedOperation);
public object ValueConversion => throw new NotImplementedException("Property 'ICoalesceOperation.ValueConversion' has unsupported type 'CommonConversion'");

public static explicit operator ICoalesceOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(ICoalesceOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static ICoalesceOperationWrapper FromOperation(IOperation operation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ private ICollectionElementInitializerOperationWrapper(IOperation operation)
public IMethodSymbol AddMethod => AddMethodAccessor(this.WrappedOperation);
public ImmutableArray<IOperation> Arguments => ArgumentsAccessor(this.WrappedOperation);
public bool IsDynamic => IsDynamicAccessor(this.WrappedOperation);

public static explicit operator ICollectionElementInitializerOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(ICollectionElementInitializerOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static ICollectionElementInitializerOperationWrapper FromOperation(IOperation operation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,10 +36,12 @@ private ICompoundAssignmentOperationWrapper(IOperation operation)
public bool IsLifted => IsLiftedAccessor(this.WrappedOperation);
public bool IsChecked => IsCheckedAccessor(this.WrappedOperation);
public IMethodSymbol OperatorMethod => OperatorMethodAccessor(this.WrappedOperation);

public static explicit operator ICompoundAssignmentOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(ICompoundAssignmentOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public IOperation Target => ((IAssignmentOperationWrapper)this).Target;
public IOperation Value => ((IAssignmentOperationWrapper)this).Value;

public static explicit operator ICompoundAssignmentOperationWrapper(IAssignmentOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IAssignmentOperationWrapper(ICompoundAssignmentOperationWrapper wrapper) => IAssignmentOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static ICompoundAssignmentOperationWrapper FromOperation(IOperation operation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ private IConditionalAccessInstanceOperationWrapper(IOperation operation)

public IOperation WrappedOperation => this.operation;
public ITypeSymbol Type => this.WrappedOperation.Type;

public static explicit operator IConditionalAccessInstanceOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(IConditionalAccessInstanceOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static IConditionalAccessInstanceOperationWrapper FromOperation(IOperation operation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ private IConditionalAccessOperationWrapper(IOperation operation)
public ITypeSymbol Type => this.WrappedOperation.Type;
public IOperation Operation => OperationAccessor(this.WrappedOperation);
public IOperation WhenNotNull => WhenNotNullAccessor(this.WrappedOperation);

public static explicit operator IConditionalAccessOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(IConditionalAccessOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static IConditionalAccessOperationWrapper FromOperation(IOperation operation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ private IConditionalOperationWrapper(IOperation operation)
public IOperation WhenTrue => WhenTrueAccessor(this.WrappedOperation);
public IOperation WhenFalse => WhenFalseAccessor(this.WrappedOperation);
public bool IsRef => IsRefAccessor(this.WrappedOperation);

public static explicit operator IConditionalOperationWrapper(IOperationWrapper wrapper) => FromOperation(wrapper.WrappedOperation);
public static implicit operator IOperationWrapper(IConditionalOperationWrapper wrapper) => IOperationWrapper.FromUpcast(wrapper.WrappedOperation);
public static IConditionalOperationWrapper FromOperation(IOperation operation)
Expand Down
Loading
Loading