pub enum Form8949Box {
C,
F,
I,
L,
}Expand description
The Form 8949 “box” (the reporting category). We only ever emit the conservative “not reported to the IRS” default, YEAR-AWARE:
- pre-TY2025 digital-asset sales used the securities boxes → C (ST) / F (LT), “not reported on a 1099-B”.
- TY2025+ the 2025 Form 8949 added digital-asset-specific boxes and the i8949 states “Do not use box C to report digital asset transactions. Use box I” / “Do not use box F… Use box L” → I (ST) / L (LT), “not reported on a 1099-DA”.
We NEVER auto-assign the 1099-reported boxes (A/B/D/E pre-2025; G/H/J/K from 2025): the model carries no
1099-B / 1099-DA signal (D4), and asserting a broker form was issued / basis reported would fabricate an
unsubstantiated box. The box_needs_review flag surfaces exchange dispositions that MAY carry a broker
form, to be reclassified on the actual return (G/H or J/K from 2025).
Variants§
C
Box C — short-term, not reported on a 1099-B (pre-TY2025 digital-asset default).
F
Box F — long-term, not reported on a 1099-B (pre-TY2025 digital-asset default).
I
Box I — short-term digital-asset sale NOT reported on a 1099-DA (TY2025+ default).
L
Box L — long-term digital-asset sale NOT reported on a 1099-DA (TY2025+ default).
Trait Implementations§
Source§impl Clone for Form8949Box
impl Clone for Form8949Box
Source§fn clone(&self) -> Form8949Box
fn clone(&self) -> Form8949Box
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 Form8949Box
Source§impl Debug for Form8949Box
impl Debug for Form8949Box
impl Eq for Form8949Box
Source§impl PartialEq for Form8949Box
impl PartialEq for Form8949Box
impl StructuralPartialEq for Form8949Box
Auto Trait Implementations§
impl Freeze for Form8949Box
impl RefUnwindSafe for Form8949Box
impl Send for Form8949Box
impl Sync for Form8949Box
impl Unpin for Form8949Box
impl UnsafeUnpin for Form8949Box
impl UnwindSafe for Form8949Box
Blanket Implementations§
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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§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.