CodeQL library for C#
codeql/csharp-all 0.9.1 (changelog, source)
Search

Class Parameter

A parameter of a Method or FunctionPointerType.

Import path

import semmle.code.cil.Variable

Direct supertypes

Indirect supertypes

Known direct subtypes

Predicates

getDeclaringElement

Gets the declaring Parameterizable.

getIndex

Gets the index of this parameter.

getLocation

Gets the location of this element.

getType

Gets the type of this variable.

hasInFlag

Holds if this parameter has an “in” flag, meaning that it will be passed by reference and may be read from and written to.

hasOutFlag

Holds if this parameter has an “out” flag, meaning that it will be passed by reference and written to.

isOut

Holds if this parameter has C# out semantics.

isRef

Holds if this parameter has C# ref semantics.

toString

Gets a textual representation of this element.

toStringWithTypes

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

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
getALocation

Gets a location of this element, which can include locations in both DLLs and source files.

from Element
getAPrimaryQlClass

Gets the name of a primary CodeQL class to which this element belongs.

from Element
getAnAttribute

Gets an attribute (for example [Obsolete]) of this declaration, if any.

from Declaration
getCSharpDeclaration

Gets the C# declaration corresponding to this CIL declaration, if any. Note that this is only for source/unconstructed declarations.

from Declaration
getCallable

Gets the callable defining this parameter, if any.

from Parameter
getDeclaringType

Gets the type containing this declaration, if any.

from Declaration
getFile

Gets the file containing this element.

from Element
getFullyQualifiedName

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
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 NamedElement
getPosition

Gets the position of this parameter, excluding the this parameter.

from Parameter
getPrimaryQlClasses

Gets a comma-separated list of the names of the primary CodeQL classes to which this element belongs.

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
getRawPosition

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

from Parameter
getUnboundDeclaration

Gets the unbound version of this declaration, that is, the declaration where all type arguments have been removed. For example, in

from Declaration
getUndecoratedName

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

from Declaration
hasFullyQualifiedName

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

from Declaration
hasName

Holds if this element has name ‘name’.

from NamedElement
hasOptionalCustomModifier

Holds if this targeted type has modifier applied as modopt.

from CustomModifierReceiver
hasQualifiedName

DEPRECATED: Use hasFullyQualifiedName instead.

from Declaration
hasRequiredCustomModifier

Holds if this targeted type has modifier applied as modreq.

from CustomModifierReceiver
hasUndecoratedName

Holds if this element has undecorated name ‘name’.

from Declaration
isUnboundDeclaration

Holds if this declaration is unbound.

from Declaration
matchesHandle

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

from NamedElement