2
是否可以使用New-Module cmdlet從另一個自定義類型創建自定義類型dervied?使用New-Module -AsCustomObject創建派生自定義類型
實施例:
function New-Shape
{
New-Module -ArgumentList $args -AsCustomObject {
param (
[string]$position
)
{
$script:position = $position
}
Export-ModuleMember -Variable Position
}
}
function New-Circle
{
# How to derive Circle from Shape?
New-Module -ArgumentList $args -AsCustomObject {
param (
[string]$radius
)
{
$script:radius = $radius
}
Export-ModuleMember -Variable Radius
}
}
# So that we can do
$circle = New-Circle $position $radius
$circle.Position
$circle.Radius
有趣的,好奇他們是如何實現DSL的。 – Alex