Sampler.psm1
#Region './Classes/1.class1.ps1' 0 Class class1 { [string]$Name = 'Class1' class1() { #default Constructor } [String] ToString() { # Typo "calss" is intentional return ( 'This calss is {0}' -f $this.Name) } } #EndRegion './Classes/1.class1.ps1' 13 #Region './Classes/2.class2.ps1' 0 Class class2 { [string]$Name = 'Class2' class2() { #default constructor } [String] ToString() { return ( 'This calss is {0}' -f $this.Name) } } #EndRegion './Classes/2.class2.ps1' 13 #Region './Classes/3.class11.ps1' 0 Class class11 : class1 { [string]$Name = 'Class11' class11 () { } [String] ToString() { return ( 'This calss is {0}:{1}' -f $this.Name,'class1') } } #EndRegion './Classes/3.class11.ps1' 13 #Region './Classes/4.class12.ps1' 0 Class class12 : class1 { [string]$Name = 'Class12' class12 () { } [String] ToString() { return ( 'This calss is {0}:{1}' -f $this.Name,'class1') } } #EndRegion './Classes/4.class12.ps1' 13 #Region './Private/Get-PrivateFunction.ps1' 0 function Get-PrivateFunction { <# .SYNOPSIS This is a sample Private function only visible within the module. .DESCRIPTION This sample function is not exported to the module and only return the data passed as parameter. .EXAMPLE $null = Get-PrivateFunction -PrivateData 'NOTHING TO SEE HERE' .PARAMETER PrivateData The PrivateData parameter is what will be returned without transformation. #> [cmdletBinding()] Param( [parameter()] [String] $PrivateData ) Process { Write-Output $PrivateData } } #EndRegion './Private/Get-PrivateFunction.ps1' 27 #Region './Public/Get-Something.ps1' 0 function Get-Something { <# .SYNOPSIS Sample Function to return input string. .DESCRIPTION This function is only a sample Advanced function that returns the Data given via parameter Data. .EXAMPLE Get-Something -Data 'Get me this text' .PARAMETER Data The Data parameter is the data that will be returned without transformation. #> [cmdletBinding( SupportsShouldProcess=$true, ConfirmImpact='Low' )] Param( [Parameter( Mandatory ,ValueFromPipeline ,ValueFromPipelineByPropertyName )] [String] $Data ) Process { if ($pscmdlet.ShouldProcess($Data)) { Write-Verbose ('Returning the data: {0}' -f $Data) Get-PrivateFunction -PrivateData $Data } else { Write-Verbose 'oh dear' } } } #EndRegion './Public/Get-Something.ps1' 41 #Region './suffix.ps1' 0 # Inspired from https://github.com/nightroman/Invoke-Build/blob/64f3434e1daa806814852049771f4b7d3ec4d3a3/Tasks/Import/README.md#example-2-import-from-a-module-with-tasks Get-ChildItem (Join-Path -Path $PSScriptRoot -ChildPath 'tasks') | ForEach-Object { $ModuleName = ([io.FileInfo]$MyInvocation.MyCommand.Name).BaseName $taskFileAliasName = "$($_.BaseName).$ModuleName.ib.tasks" Set-Alias -Name $taskFileAliasName -Value $_.FullName Export-ModuleMember -Alias $taskFileAliasName } #EndRegion './suffix.ps1' 8 |