PSSnow.psm1
using namespace System.Management.Automation using namespace System.Management.Automation.Internal $ErrorActionPreference = "Stop" $ModulePath = $PSScriptRoot $Private = Get-ChildItem (Join-Path $ModulePath Private) -Recurse -Filter *.ps1 $Public = Get-ChildItem (Join-Path $ModulePath Public) -Recurse -Filter *.ps1 #Dot source the functions $Functions = @($Private;$Public).Foreach({ [System.IO.File]::ReadAllText($_.FullName, [System.Text.Encoding]::UTF8) + [System.Environment]::NewLine }) . ([System.Management.Automation.ScriptBlock]::Create($Functions)) # Export public functions Export-ModuleMember -Function $Public.BaseName -Alias * |