pub enum DirectivePriority {
Open = 0,
Commodity = 1,
Balance = 2,
Pad = 3,
Transaction = 4,
Note = 5,
Document = 6,
Event = 7,
Query = 8,
Price = 9,
Close = 10,
Custom = 11,
}Expand description
Directive ordering priority for sorting.
When directives have the same date, they are sorted by type priority to ensure proper processing order.
Variants§
Open = 0
Open accounts first so they exist before use
Commodity = 1
Commodities declared before use
Balance = 2
Balance assertions are checked at the START of the day, so they precede a same-date pad – which is what makes such a pad UNUSED rather than applied (#2150).
beancount’s entry_sortkey gives Balance -1 and Pad the default
0. Ours had Pad first, with a comment asserting “padding before
balance assertions”; the effect was that a pad and the balance
it targets on the same date synthesized a padding transaction
beancount does not, leaving the account richer by the difference
while our own validator reported the pad as unused in the same run.
Pad = 3
Padding, after the same-date balance that would have consumed it.
Transaction = 4
Main entries
Note = 5
Annotations after transactions
Document = 6
Attachments after transactions
Event = 7
State changes
Query = 8
Queries defined after data
Price = 9
Prices at end of day
Close = 10
Accounts closed after all activity
Custom = 11
User extensions last
Trait Implementations§
Source§impl Clone for DirectivePriority
impl Clone for DirectivePriority
Source§fn clone(&self) -> DirectivePriority
fn clone(&self) -> DirectivePriority
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for DirectivePriority
Source§impl Debug for DirectivePriority
impl Debug for DirectivePriority
impl Eq for DirectivePriority
Source§impl Hash for DirectivePriority
impl Hash for DirectivePriority
Source§impl Ord for DirectivePriority
impl Ord for DirectivePriority
Source§fn cmp(&self, other: &DirectivePriority) -> Ordering
fn cmp(&self, other: &DirectivePriority) -> Ordering
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
1.21.0 (const: unstable) · Source§fn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialEq for DirectivePriority
impl PartialEq for DirectivePriority
Source§impl PartialOrd for DirectivePriority
impl PartialOrd for DirectivePriority
impl StructuralPartialEq for DirectivePriority
Auto Trait Implementations§
impl Freeze for DirectivePriority
impl RefUnwindSafe for DirectivePriority
impl Send for DirectivePriority
impl Sync for DirectivePriority
impl Unpin for DirectivePriority
impl UnsafeUnpin for DirectivePriority
impl UnwindSafe for DirectivePriority
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
out indicating that a T is niched.