Skip to content

Instantly share code, notes, and snippets.

@mnzk
Last active August 29, 2015 13:56
Show Gist options
  • Save mnzk/8893890 to your computer and use it in GitHub Desktop.
Save mnzk/8893890 to your computer and use it in GitHub Desktop.
メソッドでもパイプラインしたい。(できない)
# 追加したメソッドをパイプラインで使いたいが...
$foo = "abc" | Add-Member ScriptMethod Repeat{
param(
[Parameter(ValueFromPipeline=$True)]$n
)
$this * $n
} -PassThru
$foo.Repeat(5) #=> abcabcabcabcabc
5 | $foo.Repeat #=> NG
5 | &($foo.Repeat) #=> NG
#もちろんこれならいけるけど、これじゃメソッド追加した意味がない。
5 | %{$foo.Repeat($_)}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment