Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Tingkat Tingkat Keparahan: Peringatan
Deskripsi
Aturan ini mendeteksi operator penetapan yang tidak sejajar dalam tabel hash dan definisi enum. Pernyataan penugasan berurutan lebih mudah dibaca dan dipelihara saat operator penetapannya disejajarkan secara vertikal.
Aturan ini memeriksa pasangan kunci-nilai dalam tabel hash dan definisi anggota enum untuk memastikan bahwa = tanda sejajar. Gunakan aturan ini untuk menerapkan pemformatan yang konsisten dalam tabel hash multibaris dan definisi enum.
Aturan ini mengabaikan penetapan dalam hashtabel dan enum yang muncul di baris yang sama dengan penugasan lainnya. Misalnya, aturan mengabaikan $h = @{ a = 1; b = 2 }.
Example
Tidak sesuai
$hashtable = @{
property = 'value'
anotherProperty = 'another value'
}
enum Enum {
member = 1
anotherMember = 2
}
Sesuai
$hashtable = @{
property = 'value'
anotherProperty = 'another value'
}
enum Enum {
member = 1
anotherMember = 2
}
Konfigurasi
Rules = @{
PSAlignAssignmentStatement = @{
Enable = $true
CheckHashtable = $true
AlignHashtableKvpWithInterveningComment = $true
CheckEnum = $true
AlignEnumMemberWithInterveningComment = $true
IncludeValuelessEnumMembers = $true
}
}
Parameter-parameternya
Enable
Parameter ini mengontrol apakah ScriptAnalyzer memeriksa kode terhadap aturan ini. Ini menerima nilai boolean. Untuk mengaktifkan aturan ini, atur parameter ini ke $true. Nilai defaultnya adalah $false.
CheckHashtable
Parameter ini mengontrol apakah ScriptAnalyzer memeriksa perataan penetapan dalam tabel hash dan konfigurasi Desired State Configuration (DSC). Ini menerima nilai boolean. Untuk menonaktifkan pemeriksaan ini, atur parameter ini ke $false. Nilai defaultnya adalah $true.
AlignHashtableKvpWithInterveningComment
Parameter ini mengontrol apakah ScriptAnalyzer menyertakan pasangan kunci-nilai hashtable yang berisi komentar intervensi saat menentukan perataan. Ini menerima nilai boolean. Untuk mengecualikan baris ini, atur parameter ini ke $false. Nilai defaultnya adalah $true.
Pertimbangkan hal berikut:
$hashtable = @{
property = 'value'
anotherProperty <#A Comment#> = 'another value'
anotherDifferentProperty = 'yet another value'
}
Dengan pengaturan ini dinonaktifkan, baris dengan komentar diabaikan. Tanda sama dengan disejajarkan untuk baris yang tersisa:
$hashtable = @{
property = 'value'
anotherProperty <#A Comment#> = 'another value'
anotherDifferentProperty = 'yet another value'
}
Dengan pengaturan ini diaktifkan, tanda sama dengan disejajarkan untuk semua baris:
$hashtable = @{
property = 'value'
anotherProperty <#A Comment#> = 'another value'
anotherDifferentProperty = 'yet another value'
}
Periksa Enum
Parameter ini mengontrol apakah ScriptAnalyzer memeriksa perataan penetapan dalam definisi anggota enum. Ini menerima nilai boolean. Untuk menonaktifkan pemeriksaan ini, atur parameter ini ke $false. Nilai defaultnya adalah $true.
AlignEnumMemberWithInterveningComment
Parameter ini mengontrol apakah ScriptAnalyzer menyertakan anggota enum yang berisi komentar intervensi saat menentukan perataan. Ini menerima nilai boolean. Untuk mengecualikan baris ini, atur parameter ini ke $false. Nilai defaultnya adalah $true.
IncludeValuelessEnumMembers
Parameter ini mengontrol apakah ScriptAnalyzer menyertakan anggota enum tanpa nilai yang ditetapkan secara eksplisit saat menentukan perataan. Ini menerima nilai boolean. Untuk mengecualikan anggota tanpa nilai, atur parameter ini ke $false. Nilai defaultnya adalah $true.
Pertimbangkan hal berikut:
enum Enum {
member = 1
anotherMember = 2
anotherDifferentMember
}
Dengan pengaturan ini dinonaktifkan, baris ketiga, yang tidak memiliki nilai, tidak dipertimbangkan saat memilih tempat untuk menyelaraskan tugas.
enum Enum {
member = 1
anotherMember = 2
anotherDifferentMember
}
Dengan mengaktifkan perataan, anggota tanpa nilai disertakan dalam perataan seolah-olah memiliki nilai:
enum Enum {
member = 1
anotherMember = 2
anotherDifferentMember
}