PowerShell предоставляет простой метод для просмотра содержимого функции, например,
Get-Content function:MyFuncName # (A)
или эквивалентно
(Get-ChildItem function:MyFuncName).definition # (B)
, где MyFuncName - это имя моегофункция.Это отлично подходит для простых функций (т. Е. Функций, которые используют только конструкции базового языка и не вызывают другие функции).Но рассмотрим функцию foo
, показанную ниже, которая содержит вызов функции bar
.В типичном сценарии они оба содержались бы в одном и том же модуле, публичный API которого состоит исключительно из функции foo
и, таким образом, это единственная экспортируемая функция.
function foo ()
{
$p = bar "here"
"result is '$p'"
}
function bar ([string] $s)
{
$s + $s
}
Export-ModuleMember foo
Есть ли способ просмотра вложенногонеэкспортированные функции (например, функция bar
) внутри другой функции способом, сопоставимым с (A) или (B) выше?(То есть без открытия файла .psm1 в редакторе: -)