Enum vasp_poscar::ValidationError [] [src]

pub enum ValidationError {
    NewlineInComment,
    InvalidSymbol(Option<String>),
    NoAtoms,
    BadScaleLine,
    InconsistentNumGroups,
    WrongLength(&'static strusize),
    // some variants omitted
}

Covers all the reasons why RawPoscar::validate might get mad at you.

Beyond checking obvious problems like mismatched lengths, these limitations also exist to ensure that a Poscar can be roundtripped through its file representation.

The variants are public so that by looking at the docs you can see all the possible errors. That said, you have no good reason to write code that matches on this.

...right?

Variants

The comment line is more than one line.

A requirement on group_symbols was violated.

There are a few more restrictions in addition to the no-leading-digit restriction mentioned in format.md, in order to ensure roundtripping:

  • A symbol may not be the empty string
  • A symbol may not contain whitespace

Poscar is required to have at least one atom.

The inner value in the scale line must be positive.

Mismatch between group_counts and group_symbols lengths.

Length of a member is incorrect.

Trait Implementations

impl Debug for ValidationError
[src]

[src]

Formats the value using the given formatter.

impl Fail for ValidationError
[src]

[src]

Returns a reference to the underlying cause of this failure, if it is an error that wraps other errors. Read more

[src]

Returns a reference to the Backtrace carried by this failure, if it carries one. Read more

[src]

Provides context for this failure. Read more

[src]

Wraps this failure in a compatibility wrapper that implements std::error::Error. Read more

[src]

Returns a iterator over the causes of this Fail with itself as the first item and the root_cause as the final item. Read more

[src]

Returns the "root cause" of this Fail - the last value in the cause chain which does not return an underlying cause. Read more

impl Display for ValidationError
[src]

[src]

Formats the value using the given formatter. Read more