Я пытаюсь расширить объект Powershell с помощью метода, который
- возвращает true или false, чтобы указать успех
- выводит значение по ссылке (
[ref]
)
В моем модуле MyExtensions.psm1
.
Update-TypeData -TypeName [MyType] -MemberType ScriptMethod -memberName TryGetValue -force -value `
{
param(
$myInput,
[ref]$myOutput
)
try
{
# do something with $myInput
$myOutput = …
return $true
}
catch
{
return $false
}
}
Цель состоит в том, чтобы иметь возможность писать в сценарии или в другом модуле:
Import-Module MyExtensions
$myInput = …
$value = $null
if($myTypeItem.TryGetValue($myInput, $value)
{
# I know that the $value is good
}