このOutputType
属性は、インテリセンスを通じて型情報を提供することになっています。ただし、期待どおりには機能しません。
PSReadline と PowerShell ISE の両方でこれをテストしましたが、同じように動作します。
以下は、私が使用しているサンプル関数です。
Function Get-FirstChar
{
[OutputType([String])]
[CmdletBinding()]
param(
[Parameter(Mandatory=$true, ValueFromPipeline=$true)][string[]]$Strings
)
process {
foreach ($str in $Strings) {
$str.SubString(0, 1);
}
}
}
私がする時:
"John","Simon" | Get-FirstChar | % { $_.<TAB> }
私は提案を受け取ります(プラットフォームに関係なく):
Equals GetHashCode GetType ToString
しかし、私がするとき:
("John","Simon" | Get-FirstChar).<TAB>
SubString
次に、などのすべての文字列メソッドを取得します。
出力タイプとして文字列配列も試しましたが、String[]
まだ機能しません:(
OutputType
powershell 関数から 1 つまたは複数の文字列が返されることを示すために属性を使用する方法について、誰かが気に入ってくれますか?
ありがとうございました