Files
PURErat-crack-scode/decompiled/Libraries/microsoft.codeanalysis.csharp/Microsoft.CodeAnalysis.CSharp/BoundMethodDefIndex.cs
T
2026-08-27 10:56:38 -06:00

41 lines
1.1 KiB
C#

using System.Diagnostics;
using Microsoft.CodeAnalysis.CSharp.Symbols;
namespace Microsoft.CodeAnalysis.CSharp;
internal sealed class BoundMethodDefIndex : BoundExpression
{
public new TypeSymbol Type => base.Type;
public MethodSymbol Method { get; }
public BoundMethodDefIndex(SyntaxNode syntax, MethodSymbol method, TypeSymbol type, bool hasErrors)
: base(BoundKind.MethodDefIndex, syntax, type, hasErrors)
{
Method = method;
}
public BoundMethodDefIndex(SyntaxNode syntax, MethodSymbol method, TypeSymbol type)
: base(BoundKind.MethodDefIndex, syntax, type)
{
Method = method;
}
[DebuggerStepThrough]
public override BoundNode? Accept(BoundTreeVisitor visitor)
{
return visitor.VisitMethodDefIndex(this);
}
public BoundMethodDefIndex Update(MethodSymbol method, TypeSymbol type)
{
if (!SymbolEqualityComparer.ConsiderEverything.Equals(method, Method) || !TypeSymbol.Equals(type, Type, (TypeCompareKind)0))
{
BoundMethodDefIndex boundMethodDefIndex = new BoundMethodDefIndex(Syntax, method, type, base.HasErrors);
boundMethodDefIndex.CopyAttributes(this);
return boundMethodDefIndex;
}
return this;
}
}