< Summary

Information
Class: Trailblazer.Pathing.NavigationAreaPolicyCommitOperation
Assembly: Trailblazer
File(s): /home/runner/work/Trailblazer/Trailblazer/src/Trailblazer/Pathing/Traversal/NavigationAreaPolicyCommitOperation.cs
Line coverage
100%
Covered lines: 7
Uncovered lines: 0
Coverable lines: 7
Total lines: 38
Line coverage: 100%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
.ctor(...)100%11100%

File(s)

/home/runner/work/Trailblazer/Trailblazer/src/Trailblazer/Pathing/Traversal/NavigationAreaPolicyCommitOperation.cs

#LineLine coverage
 1//=======================================================================
 2// NavigationAreaPolicyCommitOperation.cs
 3//=======================================================================
 4// MIT License, Copyright (c) 2024-present David Oravsky (mrdav30)
 5// See LICENSE file in the project root for full license information.
 6//=======================================================================
 7
 8namespace Trailblazer.Pathing;
 9
 10/// <summary>Describes one deterministic immutable navigation-area policy publication.</summary>
 11public readonly struct NavigationAreaPolicyCommitOperation
 12{
 13    /// <summary>Creates a policy publication and its pending receipt.</summary>
 14    public NavigationAreaPolicyCommitOperation(
 15        NavigationAreaPolicy policy,
 16        long publicationSequence,
 17        int effectiveFrame)
 18    {
 19819        SwiftThrowHelper.ThrowIfNull(policy, nameof(policy));
 19820        NavigationOperationValidation.ValidateSchedule(publicationSequence, effectiveFrame);
 19821        Policy = policy;
 19822        PublicationSequence = publicationSequence;
 19823        EffectiveFrame = effectiveFrame;
 19824        Receipt = new NavigationOperationReceipt(publicationSequence, effectiveFrame);
 19825    }
 26
 27    /// <summary>Gets the immutable policy revision.</summary>
 28    public NavigationAreaPolicy Policy { get; }
 29
 30    /// <summary>Gets the unique sequence in the context's policy-publication stream.</summary>
 31    public long PublicationSequence { get; }
 32
 33    /// <summary>Gets the earliest eligible fixed-step publication frame.</summary>
 34    public int EffectiveFrame { get; }
 35
 36    /// <summary>Gets the operation's deterministic receipt.</summary>
 37    public NavigationOperationReceipt Receipt { get; }
 38}