Attempted to access a field on a primitive type.

Erroneous code example:

let x: u32 = 0;
println!("{}", x.foo); // error: `{integer}` is a primitive type, therefore
                       //        doesn't have fields

Primitive types are the most basic types available in Rust and don't have fields. To access data via named fields, struct types are used. Example:

// We declare struct called `Foo` containing two fields:
struct Foo {
    x: u32,
    y: i64,
}

// We create an instance of this struct:
let variable = Foo { x: 0, y: -12 };
// And we can now access its fields:
println!("x: {}, y: {}", variable.x, variable.y);

For more information about primitives and structs, take a look at The Book: https://doc.rust-lang.org/book/ch03-02-data-types.html https://doc.rust-lang.org/book/ch05-00-structs.html