Table of Contents

Class ParameterDeclaration

Namespace
ICSharpCode.Decompiler.CSharp.Syntax
Assembly
ICSharpCode.Decompiler.dll
public class ParameterDeclaration : AstNode, IAnnotatable, IFreezable, INode, ICloneable
Inheritance
ParameterDeclaration
Implements
Inherited Members
Extension Methods

Constructors

ParameterDeclaration()

public ParameterDeclaration()

ParameterDeclaration(AstType, string, ParameterModifier)

public ParameterDeclaration(AstType type, string name, ParameterModifier modifier = ParameterModifier.None)

Parameters

type AstType
name string
modifier ParameterModifier

ParameterDeclaration(string, ParameterModifier)

public ParameterDeclaration(string name, ParameterModifier modifier = ParameterModifier.None)

Parameters

name string
modifier ParameterModifier

Fields

AttributeRole

public static readonly Role<AttributeSection> AttributeRole

Field Value

Role<AttributeSection>

InModifierRole

public static readonly TokenRole InModifierRole

Field Value

TokenRole

OutModifierRole

public static readonly TokenRole OutModifierRole

Field Value

TokenRole

ParamsModifierRole

public static readonly TokenRole ParamsModifierRole

Field Value

TokenRole

RefModifierRole

public static readonly TokenRole RefModifierRole

Field Value

TokenRole

RefScopedRole

[Obsolete("Renamed to ScopedRefRole")]
public static readonly TokenRole RefScopedRole

Field Value

TokenRole

ScopedRefRole

public static readonly TokenRole ScopedRefRole

Field Value

TokenRole

ThisModifierRole

public static readonly TokenRole ThisModifierRole

Field Value

TokenRole

ValueScopedRole

[Obsolete("C# 11 preview: \"ref scoped\" no longer supported")]
public static readonly TokenRole ValueScopedRole

Field Value

TokenRole

Properties

AssignToken

public CSharpTokenNode AssignToken { get; }

Property Value

CSharpTokenNode

Attributes

public AstNodeCollection<AttributeSection> Attributes { get; }

Property Value

AstNodeCollection<AttributeSection>

DefaultExpression

public Expression DefaultExpression { get; set; }

Property Value

Expression

DoubleExclamationToken

public CSharpTokenNode DoubleExclamationToken { get; }

Property Value

CSharpTokenNode

HasNullCheck

public bool HasNullCheck { get; set; }

Property Value

bool

HasThisModifier

public bool HasThisModifier { get; set; }

Property Value

bool

IsRefScoped

[Obsolete("Renamed to IsScopedRef")]
public bool IsRefScoped { get; set; }

Property Value

bool

IsScopedRef

public bool IsScopedRef { get; set; }

Property Value

bool

IsValueScoped

[Obsolete("C# 11 preview: \"ref scoped\" no longer supported")]
public bool IsValueScoped { get; set; }

Property Value

bool

Name

public string Name { get; set; }

Property Value

string

NameToken

public Identifier NameToken { get; set; }

Property Value

Identifier

NodeType

public override NodeType NodeType { get; }

Property Value

NodeType

ParameterModifier

public ParameterModifier ParameterModifier { get; set; }

Property Value

ParameterModifier

ThisKeyword

public CSharpTokenNode ThisKeyword { get; }

Property Value

CSharpTokenNode

Type

public AstType Type { get; set; }

Property Value

AstType

Methods

AcceptVisitor(IAstVisitor)

public override void AcceptVisitor(IAstVisitor visitor)

Parameters

visitor IAstVisitor

AcceptVisitor<T>(IAstVisitor<T>)

public override T AcceptVisitor<T>(IAstVisitor<T> visitor)

Parameters

visitor IAstVisitor<T>

Returns

T

Type Parameters

T

AcceptVisitor<T, S>(IAstVisitor<T, S>, T)

public override S AcceptVisitor<T, S>(IAstVisitor<T, S> visitor, T data)

Parameters

visitor IAstVisitor<T, S>
data T

Returns

S

Type Parameters

T
S

Clone()

public ParameterDeclaration Clone()

Returns

ParameterDeclaration

DoMatch(AstNode?, Match)

protected override bool DoMatch(AstNode? other, Match match)

Parameters

other AstNode
match Match

Returns

bool

Operators

implicit operator ParameterDeclaration?(Pattern)

public static implicit operator ParameterDeclaration?(Pattern pattern)

Parameters

pattern Pattern

Returns

ParameterDeclaration