PSJumpStart.ps1xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
<?xml version="1.0" encoding="utf-8" ?>
<Types> <Type> <Name>System.Collections.Hashtable</Name> <Members> <ScriptMethod> <Name>AppendValue</Name> <Script> #This will ONLY work for simple content type(s) $key = $args[0] $data = $args[1] if ($this.ContainsKey($key)) { $currentData = $this[$key] $this.Remove($key) $this.Add($key,@($currentData,$value)) #switch -Wildcard ($currentData.GetType()) { # "String" { # $this.Add($key,$currentData + $data) # break # } # "Int*" { # $this.Add($key,$currentData + $data) # break # } # default { # $newData = @($currentData,$value) # $this.Add($key,$newData) # break # } #} } else { $this.Add($key,$data) } </Script> </ScriptMethod> <ScriptMethod> <Name>Replace</Name> <Script> $key = $args[0] $data = $args[1] if ($this.ContainsKey($key)) { $this.Remove($key) } $this.Add($key,$data) </Script> </ScriptMethod> </Members> </Type> </Types> |