NuGet パッケージ マネージャーコンソールがGitHub から Gistsを挿入するためのコマンドをいくつか書きたいと思っています。私は4つの基本的なコマンドを持っています
- List-Gists 'ユーザー'
- Gist-Info 'gistId'
- Gist-Contents 'gistId' 'fileName'
- Gist-Insert 'gistId' 'fileName'
私のコマンドはすべていくつかのユーティリティ関数に依存しており、グローバルにする必要があるかどうかで苦労しています。
# Json Parser
function parseJson([string]$json, [bool]$throwError = $true) {
try {
$result = $serializer.DeserializeObject( $json );
return $result;
} catch {
if($throwError) { throw "ERROR: Parsing Error"}
else { return $null }
}
}
function downloadString([string]$stringUrl) {
try {
return $webClient.DownloadString($stringUrl)
} catch {
throw "ERROR: Problem downloading from $stringUrl"
}
}
function parseUrl([string]$url) {
return parseJson(downloadString($url));
}
これらのユーティリティ関数をグローバル関数の外に置くことはできますか?それとも、グローバル関数定義のスコープのそれぞれにそれらを含める必要がありますか?