SubEtha.psm1

$root = $PSScriptRoot
$tfm = if ($PSVersionTable.PSEdition -eq 'Core') { 'net10.0' } else { 'netstandard2.0' }
if (-not ('Pwrs.Bootstrap.Loader' -as [type])) {
$null = [System.Reflection.Assembly]::LoadFrom([System.IO.Path]::Combine($root, $tfm, 'Pwrs.Bootstrap.dll'))
}
$shell = [Pwrs.Bootstrap.Loader]::Load($root, 'SubEtha', $tfm)
foreach ($m in Get-Module -All) {
if ($m.ModuleType -eq 'Binary' -and ($m.Path -eq $shell.Location -or $m.Name -like '*SubEtha.Shell*')) {
Remove-Module -ModuleInfo $m -Force -ErrorAction SilentlyContinue
}
}
Import-Module -Assembly $shell -Force
Export-ModuleMember -Cmdlet 'New-SubEthaAtomic', 'Open-SubEthaAtomic', 'New-SubEthaRegion', 'Open-SubEthaRegion', 'New-SubEthaCell', 'Open-SubEthaCell', 'New-SubEthaVec', 'Open-SubEthaVec', 'New-SubEthaSharedArc', 'Open-SubEthaSharedArc', 'New-SubEthaLazyValue', 'Open-SubEthaLazyValue', 'New-SubEthaBitVec', 'Open-SubEthaBitVec', 'New-SubEthaSpscRing', 'Open-SubEthaSpscRing', 'New-SubEthaBroadcastRing', 'Open-SubEthaBroadcastRing', 'New-SubEthaCapacityRing', 'Open-SubEthaCapacityRing', 'New-SubEthaLocaleRing', 'Open-SubEthaLocaleRing', 'New-SubEthaRing', 'Open-SubEthaRing', 'New-SubEthaReorderWindow', 'New-SubEthaStack', 'Open-SubEthaStack', 'New-SubEthaDeque', 'Open-SubEthaDeque', 'New-SubEthaPubSub', 'Open-SubEthaPubSub', 'New-SubEthaLamportPair', 'New-SubEthaFrameRegion', 'Open-SubEthaFrameRegion', 'New-SubEthaArena', 'Open-SubEthaArena', 'New-SubEthaLinkedList', 'Open-SubEthaLinkedList', 'New-SubEthaSlab', 'Open-SubEthaSlab', 'New-SubEthaBTreeMap', 'Open-SubEthaBTreeMap', 'New-SubEthaHashMap', 'Open-SubEthaHashMap', 'New-SubEthaMpscPool', 'New-SubEthaMpmcGrid', 'New-SubEthaNotifierSet', 'New-SubEthaLeaderElection', 'Open-SubEthaLeaderElection', 'New-SubEthaHolderTable', 'Open-SubEthaHolderTable', 'New-SubEthaHeartbeat', 'Open-SubEthaHeartbeat', 'New-SubEthaEpochBarrier', 'Open-SubEthaEpochBarrier', 'New-SubEthaCondvar', 'Open-SubEthaCondvar', 'Wait-SubEthaCondition', 'New-SubEthaFenceClock', 'Open-SubEthaFenceClock', 'New-SubEthaEpochs', 'Open-SubEthaEpochs', 'New-SubEthaRWLock', 'Open-SubEthaRWLock', 'New-SubEthaSemaphore', 'Open-SubEthaSemaphore', 'New-SubEthaOwnerLease', 'Open-SubEthaOwnerLease', 'New-SubEthaBloomFilter', 'Open-SubEthaBloomFilter', 'Measure-SubEthaBloomSize', 'New-SubEthaBlockedBloomFilter', 'Open-SubEthaBlockedBloomFilter', 'New-SubEthaHyperLogLog', 'Open-SubEthaHyperLogLog', 'New-SubEthaCountMinSketch', 'Open-SubEthaCountMinSketch', 'Measure-SubEthaSketchSize', 'New-SubEthaHistogram', 'Open-SubEthaHistogram', 'New-SubEthaRateLimiter', 'Open-SubEthaRateLimiter', 'New-SubEthaLruCache', 'Open-SubEthaLruCache', 'New-SubEthaReservoir', 'Open-SubEthaReservoir', 'New-SubEthaHandleTable', 'Open-SubEthaHandleTable', 'New-SubEthaTimePointTile', 'Open-SubEthaTimePointTile', 'New-SubEthaVersionChain', 'Open-SubEthaVersionChain', 'New-SubEthaVersionedSlab', 'Open-SubEthaVersionedSlab', 'New-SubEthaVersionedMap', 'Open-SubEthaVersionedMap', 'New-SubEthaLanedMap', 'Open-SubEthaLanedMap', 'New-SubEthaTopologyMap', 'Open-SubEthaTopologyMap', 'New-SubEthaGraph', 'Open-SubEthaGraph', 'New-SubEthaUniversal', 'Open-SubEthaUniversal', 'New-SubEthaTower', 'Open-SubEthaTower', 'New-SubEthaChannel', 'Open-SubEthaChannel', 'New-SubEthaAdaptiveQueue', 'New-SubEthaWorkQueue', 'Open-SubEthaWorkQueue', 'New-SubEthaKvMap', 'New-SubEthaQosPolicy', 'New-SubEthaTinyBloom', 'New-SubEthaFineBloom', 'New-SubEthaClock', 'New-SubEthaCausalClock', 'New-SubEthaSensSender', 'New-SubEthaSensReceiver', 'New-SubEthaLossKind', 'New-SubEthaLossBursts', 'New-SubEthaTiming', 'New-SubEthaRoundTripShape', 'New-SubEthaPeriodicity', 'New-SubEthaCapacity', 'New-SubEthaForecast', 'New-SubEthaPathChanges', 'New-SubEthaTcpBridgeClient', 'New-SubEthaTcpBridgeServer', 'New-SubEthaSelfSignedCert', 'New-SubEthaQuicBridgeClient', 'New-SubEthaQuicBridgeServer', 'Get-SubEthaTransport', 'Send-SubEthaItem', 'Receive-SubEthaItem' -Alias 'New-SEAtomic', 'Open-SEAtomic', 'New-SERegion', 'Open-SERegion', 'New-SECell', 'Open-SECell', 'New-SEVec', 'Open-SEVec', 'New-SESharedArc', 'Open-SESharedArc', 'New-SELazyValue', 'Open-SELazyValue', 'New-SEBitVec', 'Open-SEBitVec', 'New-SESpscRing', 'Open-SESpscRing', 'New-SEBroadcastRing', 'Open-SEBroadcastRing', 'New-SECapacityRing', 'Open-SECapacityRing', 'New-SELocaleRing', 'Open-SELocaleRing', 'New-SERing', 'Open-SERing', 'New-SEReorderWindow', 'New-SEStack', 'Open-SEStack', 'New-SEDeque', 'Open-SEDeque', 'New-SEPubSub', 'Open-SEPubSub', 'New-SELamportPair', 'New-SEFrameRegion', 'Open-SEFrameRegion', 'New-SEArena', 'Open-SEArena', 'New-SELinkedList', 'Open-SELinkedList', 'New-SESlab', 'Open-SESlab', 'New-SEBTreeMap', 'Open-SEBTreeMap', 'New-SEHashMap', 'Open-SEHashMap', 'New-SEMpscPool', 'New-SEMpmcGrid', 'New-SENotifierSet', 'New-SELeaderElection', 'Open-SELeaderElection', 'New-SEHolderTable', 'Open-SEHolderTable', 'New-SEHeartbeat', 'Open-SEHeartbeat', 'New-SEEpochBarrier', 'Open-SEEpochBarrier', 'New-SECondvar', 'Open-SECondvar', 'Wait-SECondition', 'New-SEFenceClock', 'Open-SEFenceClock', 'New-SEEpochs', 'Open-SEEpochs', 'New-SERWLock', 'Open-SERWLock', 'New-SESemaphore', 'Open-SESemaphore', 'New-SEOwnerLease', 'Open-SEOwnerLease', 'New-SEBloomFilter', 'Open-SEBloomFilter', 'Measure-SEBloomSize', 'New-SEBlockedBloomFilter', 'Open-SEBlockedBloomFilter', 'New-SEHyperLogLog', 'Open-SEHyperLogLog', 'New-SECountMinSketch', 'Open-SECountMinSketch', 'Measure-SESketchSize', 'New-SEHistogram', 'Open-SEHistogram', 'New-SERateLimiter', 'Open-SERateLimiter', 'New-SELruCache', 'Open-SELruCache', 'New-SEReservoir', 'Open-SEReservoir', 'New-SEHandleTable', 'Open-SEHandleTable', 'New-SETimePointTile', 'Open-SETimePointTile', 'New-SEVersionChain', 'Open-SEVersionChain', 'New-SEVersionedSlab', 'Open-SEVersionedSlab', 'New-SEVersionedMap', 'Open-SEVersionedMap', 'New-SELanedMap', 'Open-SELanedMap', 'New-SETopologyMap', 'Open-SETopologyMap', 'New-SEGraph', 'Open-SEGraph', 'New-SEUniversal', 'Open-SEUniversal', 'New-SETower', 'Open-SETower', 'New-SEChannel', 'Open-SEChannel', 'New-SEAdaptiveQueue', 'New-SEWorkQueue', 'Open-SEWorkQueue', 'New-SEKvMap', 'New-SEQosPolicy', 'New-SETinyBloom', 'New-SEFineBloom', 'New-SEClock', 'New-SECausalClock', 'New-SESensSender', 'New-SESensReceiver', 'New-SELossKind', 'New-SELossBursts', 'New-SETiming', 'New-SERoundTripShape', 'New-SEPeriodicity', 'New-SECapacity', 'New-SEForecast', 'New-SEPathChanges', 'New-SETcpBridgeClient', 'New-SETcpBridgeServer', 'New-SESelfSignedCert', 'New-SEQuicBridgeClient', 'New-SEQuicBridgeServer', 'Get-SETransport', 'Send-SEItem', 'Receive-SEItem'