src/Test-MandatoryParameter.ps1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

function Test-MandatoryParameter {

    [CmdletBinding()]
    Param(
        [Parameter(Mandatory)]
        [System.Management.Automation.ParameterMetadata]
        $Metadata
    )

    $Metadata.Attributes `
        | Where-Object {
            ($_.GetType() -eq [System.Management.Automation.ParameterAttribute])
        } `
        | Select-Object -ExpandProperty Mandatory -First 1
}