Skip to main content

FormsError

Enum FormsError 

Source
pub enum FormsError {
    UnsupportedYear(i32),
    MapFieldMissing(String),
    Overflow {
        part: &'static str,
        rows: usize,
        capacity: usize,
    },
    Geometry(String),
    UnmappedField(String),
    Structure(String),
    Pdf(Error),
    Map(Error),
    Io(Error),
}
Expand description

Anything that can go wrong filling an official IRS PDF.

The geometric read-back failures (Geometry, UnmappedField) are the tax-safety net: a fill that lands a value in the wrong cell — or writes any field the map did not authorize — FAILS CLOSED (no PDF bytes are returned), so a mis-mapped form is never handed to a filer.

Variants§

§

UnsupportedYear(i32)

The requested tax year has no bundled form set / map (this build ships TY2017, 2024 + 2025).

§

MapFieldMissing(String)

A field named by the map does not exist in the bundled PDF’s AcroForm.

§

Overflow

More data rows than the form’s page grid can hold on the paths that do not paginate.

Fields

§part: &'static str

The part being filled (“Part I” / “Part II”).

§rows: usize

The number of rows requested.

§capacity: usize

The per-page row capacity from the map.

§

Geometry(String)

The geometric read-back found a written value in the WRONG column/row band — the map is mis-aligned. Fails closed.

§

UnmappedField(String)

A field carries a value but the map never authorized writing it (a stray write). Fails closed.

§

Structure(String)

The bundled PDF’s structure was not what the engine expects (missing AcroForm, bad Rect, …).

§

Pdf(Error)

Underlying lopdf parse/serialize error.

§

Map(Error)

A committed TOML map failed to parse.

§

Io(Error)

I/O error serializing the PDF.

Trait Implementations§

Source§

impl Debug for FormsError

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Display for FormsError

Source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Error for FormsError

Source§

fn source(&self) -> Option<&(dyn Error + 'static)>

Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§

fn description(&self) -> &str

👎Deprecated since 1.42.0:

use the Display impl or to_string()

1.0.0 · Source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0:

replaced by Error::source, which can support downcasting

Source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type-based access to context intended for error reports. Read more
Source§

impl From<Error> for FormsError

Source§

fn from(source: Error) -> Self

Converts to this type from the input type.
Source§

impl From<Error> for FormsError

Source§

fn from(source: Error) -> Self

Converts to this type from the input type.
Source§

impl From<Error> for FormsError

Source§

fn from(source: Error) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V