Bagikan melalui


AlignAssignmentStatement

Tingkat Tingkat Keparahan: Peringatan

Deskripsi

Pernyataan tugas berurutan lebih mudah dibaca jika diselaraskan. Tugas dianggap sejajar ketika tanda-tanda mereka equals berbaris secara vertikal.

Aturan ini melihat pasangan kunci-nilai dalam tabel hash (termasuk konfigurasi DSC) serta definisi enum.

Pertimbangkan contoh berikut dengan hashtable dan enum yang tidak sejajar.

$hashtable = @{
    property = 'value'
    anotherProperty = 'another value'
}

enum Enum {
    member = 1
    anotherMember = 2
}

Perataan dalam hal ini akan terlihat seperti berikut.

$hashtable = @{
    property        = 'value'
    anotherProperty = 'another value'
}

enum Enum {
    member        = 1
    anotherMember = 2
}

Aturan ini mengabaikan penugasan apa pun dalam tabel hash dan enum yang berada di baris yang sama dengan yang lain. Misalnya, aturan mengabaikan $h = @{a = 1; b = 2}.

Konfigurasi

Rules = @{
    PSAlignAssignmentStatement = @{
        Enable                                  = $true
        CheckHashtable                          = $true
        AlignHashtableKvpWithInterveningComment = $true
        CheckEnum                               = $true
        AlignEnumMemberWithInterveningComment   = $true
        IncludeValuelessEnumMembers             = $true
    }
}

Parameter-parameternya

Aktifkan: bool (Nilai default adalah $false)

Aktifkan atau nonaktifkan aturan selama pemanggilan ScriptAnalyzer.

CheckHashtable: bool (Nilai default adalah $true)

Terapkan penyelarasan pernyataan penugasan dalam tabel hash dan dalam Konfigurasi DSC. Hanya ada satu pengaturan untuk konfigurasi hashtable dan DSC karena pasangan nilai properti dalam konfigurasi DSC diurai sebagai pasangan kunci-nilai dari hashtable.

AlignHashtableKvpWithInterveningComment: bool (Nilai defaultnya adalah $true)

Sertakan pasangan kunci-nilai dalam perataan yang memiliki komentar intervensi - yaitu komentar antara nama kunci dan tanda sama dengan.

Pertimbangkan hal berikut:

$hashtable = @{
    property = 'value'
    anotherProperty <#A Comment#> = 'another value'
    anotherDifferentProperty = 'yet another value'
}

Dengan pengaturan ini dinonaktifkan, baris dengan komentar diabaikan, dan akan disejajarkan seperti ini:

$hashtable = @{
    property                 = 'value'
    anotherProperty <#A Comment#> = 'another value'
    anotherDifferentProperty = 'yet another value'
}

Dengan mengaktifkan baris komentar disertakan dalam perataan:

$hashtable = @{
    property                      = 'value'
    anotherProperty <#A Comment#> = 'another value'
    anotherDifferentProperty      = 'yet another value'
}

CheckEnum: bool (Nilai default adalah $true)

Terapkan penyelarasan pernyataan penugasan definisi Enum.

AlignEnumMemberWithInterveningComment: bool (Nilai defaultnya adalah $true)

Sertakan anggota enum dalam perataan yang memiliki komentar intervensi - yaitu komentar antara nama anggota dan tanda sama dengan.

Pertimbangkan hal berikut:

enum Enum {
    member = 1
    anotherMember <#A Comment#> = 2
    anotherDifferentMember = 3
}

Dengan pengaturan ini dinonaktifkan, baris dengan komentar diabaikan, dan akan disejajarkan seperti ini:

enum Enum {
    member                 = 1
    anotherMember <#A Comment#> = 2
    anotherDifferentMember = 3
}

Dengan mengaktifkan baris komentar disertakan dalam perataan:

enum Enum {
    member                      = 1
    anotherMember <#A Comment#> = 2
    anotherDifferentMember      = 3
}

IncludeValuelessEnumMembers: bool (Nilai defaultnya adalah $true)

Sertakan anggota enum dalam perataan yang tidak memiliki nilai yang ditetapkan secara eksplisit. Enum tidak perlu diberi nilai ketika didefinisikan.

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. Itu akan disejajarkan seperti ini:

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
}