Types/PSModuleInfo/get_Export.ps1
<# .SYNOPSIS Gets a module's exports .DESCRIPTION Gets everything a module exports or intends to export. This combines the various `.Exported*` properties already present on a module. It also adds anything found in a manifest's `.PrivateData.Export(s)` properties, as well as anything in a manifest's `.PrivateData.PSData.Export(s)`. .NOTES This property serves two major purposes: 1. Interacting with all of the exports from any module in a consistent way 2. Facilitating exporting additional content from modules, such as classes. #> param() $( if ($this.ExportedCommands.Count) { $this.ExportedCommands.Values } elseif (-not $this.ExportedVariables.Count) { foreach ($loadedCommand in $ExecutionContext.SessionState.InvokeCommand.GetCommands("*","Alias,Function,Cmdlet",$true)) { if ($loadedCommand.Module -eq $this) { $loadedCommand } } } ), $this.ExportedDSCResources.Values, $this.ExportedTypeFiles, $this.ExportedFormatFiles, $this.ExportedVariables, $this.PrivateData.Export, $this.PrivateData.Exports, $this.PrivateData.PSData.Export, $this.PrivateData.PSData.Exports -ne $null | & { process { if ($_) { $_ } } } |