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