Class Variable::Parameter

A parameter of a parameterizable declaration (callable, delegate, or indexer). For example, p in

void M(int p) {
  ...
}

Direct supertypes

Indirect supertypes

Known direct subtypes

Predicates

getAnAssignedArgument

Gets an argument which is assigned to this parameter in a call to the enclosing callable.

getCallable

Gets the callable to which this parameter belongs, if any.

getDeclaringElement

Gets the declaring element of this parameter.

getDefaultValue

Gets the default value of this parameter, if any. For example, the default value of numberOfTries is 3 in

getIndex

Gets the index of this element among its parent’s other children (zero-based).

getLocation
getPosition

Gets the position of this parameter. For example, the position of x is 0 and the position of y is 1 in

getSourceDeclaration

Gets the unbound version of this declaration.

getType

Gets the type of this variable. For example int in int x.

hasDefaultValue

Holds if this parameter has a default value.

hasExtensionMethodModifier

Holds this parameter is the first parameter of an extension method. For example, list is the first parameter of the extension method Count in

isIn

Holds if this parameter is a value type that is passed in by reference. For example, p is an input parameter in

isOut

Holds if this parameter is an output parameter. For example, p is an output parameter in

isOutOrRef

Holds if this parameter is an output or reference parameter.

isOverwritten

Holds if this parameter is potentially overwritten in the body of its callable.

isParams

Holds if this parameter is a parameter array. For example, args is a parameter array in

isRef

Holds if this parameter is a reference parameter. For example, p is a reference parameter in

isValue

Holds if this parameter is a normal value parameter. For example, p is a value parameter in

toString

Gets a textual representation of this element.

Inherited predicates

compiledFromSource

Holds if this element was compiled from source code that is also present in the database. That is, this element corresponds to another element from source.

from NamedElement
fromLibrary

Holds if this element is from an assembly.

from Element
fromSource

Holds if this element is from source code.

from Element
getACapturingCallable

Gets a callable that captures this variable, if any. For example, v is captured by the nested lambda expression in

from LocalScopeVariable
getAChild

Gets a child of this element, if any.

from Element
getAChildExpr

Gets a child expression of this element, if any.

from TopLevelExprParent
getALocation

Gets a location of this element, including sources and assemblies.

from Variable
getAnAccess

Gets an access to this assignable.

from Variable
getAnAssignedValue

Gets an expression assigned to this assignable, if any.

from Assignable
getAnAttribute

Gets an attribute attached to this element, if any.

from Attributable
getChild

Gets the ith child of this element (zero-based).

from TopLevelExprParent
getChildExpr

Gets the ith child expression of this element (zero-based).

from TopLevelExprParent
getDeclaringType

Gets the type that declares this variable, if any.

from Variable
getFile

Gets the file containing this element.

from Element
getInitializer

Gets the expression used to initialise this variable, if any.

from Variable
getLabel

Gets a unique string label for this element.

from NamedElement
getLanguage

Gets the “language” of this program element, as defined by the extension of the filename. For example, C# has language “cs”, and Visual Basic has language “vb”.

from Element
getName

Gets the name of this element.

from Variable
getNumberOfChildren

Gets the number of children of this element.

from Element
getParent

Gets the parent of this element, if any.

from Element
getQualifiedName

Gets the fully qualified name of this element, for example the fully qualified name of M on line 3 is N.C.M in

from NamedElement
getQualifiedNameWithTypes

Gets the fully qualified name of this declaration, including types, for example the fully qualified name with types of M on line 3 is N.C.M(int, string) in

from Declaration
getRawPosition

Gets the raw position of this parameter, including the this parameter at index 0.

from Parameter
getUndecoratedName

Gets the name of this declaration, without additional decoration such as <...>.

from Declaration
hasName

Holds if this element has name ‘name’.

from NamedElement
hasQualifiedName

Holds if this element has the qualified name qualifier.name.

from Declaration
hasQualifiedName

Holds if this element has qualified name qualifiedName, for example System.Console.WriteLine.

from NamedElement
isCaptured

Holds if this variable is captured by a nested callable. For example, v is captured by the nested lambda expression in

from LocalScopeVariable
isCompilerGenerated

Holds if this declaration has been generated by the compiler, for example implicit constructors or accessors.

from Declaration
isSourceDeclaration

Holds if this declaration is unconstructed and in source code.

from Declaration
matchesHandle

Holds if other has the same metadata handle in the same assembly.

from NamedElement
toStringWithTypes

Gets the full textual representation of this element, including type information.

from Element