[INFO] fetching crate shape-core 0.1.17...
[INFO] building shape-core-0.1.17 against master#ad85bc524b1ad696e42061ad8338d382dffbdbe5 for pr-146237-1
[INFO] extracting crate shape-core 0.1.17 into /workspace/builds/worker-6-tc1/source
[INFO] started tweaking crates.io crate shape-core 0.1.17
[INFO] finished tweaking crates.io crate shape-core 0.1.17
[INFO] tweaked toml for crates.io crate shape-core 0.1.17 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate shape-core 0.1.17 on toolchain ad85bc524b1ad696e42061ad8338d382dffbdbe5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 26 packages to latest compatible versions
[INFO] [stderr]       Adding itertools v0.12.1 (available: v0.14.0)
[INFO] [stderr]       Adding rand v0.8.5 (available: v0.9.2)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded color-core v0.1.6
[INFO] [stderr]   Downloaded projective v0.3.0
[INFO] [stderr]   Downloaded wolfram-expr v0.1.4
[INFO] [stderr]   Downloaded distantia v0.0.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 4bde95d855a339ec952c9049ee4e7bb2830685d756585d47cded59e3a9226233
[INFO] running `Command { std: "docker" "start" "-a" "4bde95d855a339ec952c9049ee4e7bb2830685d756585d47cded59e3a9226233", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4bde95d855a339ec952c9049ee4e7bb2830685d756585d47cded59e3a9226233", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4bde95d855a339ec952c9049ee4e7bb2830685d756585d47cded59e3a9226233", kill_on_drop: false }`
[INFO] [stdout] 4bde95d855a339ec952c9049ee4e7bb2830685d756585d47cded59e3a9226233
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 81ec54bc238d7ba9e6cef89449de38cc8070c60fca5f0d3e43d3ea723c7ec650
[INFO] running `Command { std: "docker" "start" "-a" "81ec54bc238d7ba9e6cef89449de38cc8070c60fca5f0d3e43d3ea723c7ec650", kill_on_drop: false }`
[INFO] [stderr]    Compiling distantia v0.0.0
[INFO] [stderr]    Compiling color-core v0.1.6
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]    Compiling projective v0.3.0
[INFO] [stderr]    Compiling shape-core v0.1.17 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `macros::*`
[INFO] [stdout]   --> src/lib.rs:11:30
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use crate::{elements::*, macros::*, traits::*};
[INFO] [stdout]    |                              ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lhs`
[INFO] [stdout]   --> src/elements/points/point_2d/euclidean.rs:40:22
[INFO] [stdout]    |
[INFO] [stdout] 40 |                 let (lhs, rhs) = rhs.points.split_at(xs.len() / 2);
[INFO] [stdout]    |                      ^^^ help: if this is intentional, prefix it with an underscore: `_lhs`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rhs`
[INFO] [stdout]   --> src/elements/points/point_2d/euclidean.rs:40:27
[INFO] [stdout]    |
[INFO] [stdout] 40 |                 let (lhs, rhs) = rhs.points.split_at(xs.len() / 2);
[INFO] [stdout]    |                           ^^^ help: if this is intentional, prefix it with an underscore: `_rhs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/elements/points/point_2d/euclidean.rs:37:18
[INFO] [stdout]    |
[INFO] [stdout] 37 |             _ => unsafe {
[INFO] [stdout]    |                  ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rhs`
[INFO] [stdout]   --> src/elements/points/point_2d/euclidean.rs:74:33
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn euclidean_squared(&self, rhs: &Triangle<T>) -> T {
[INFO] [stdout]    |                                 ^^^ help: if this is intentional, prefix it with an underscore: `_rhs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PolygonIndex` is never constructed
[INFO] [stdout]   --> src/elements/polygons/mod.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct PolygonIndex {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/ellipses/mod.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub radius: T,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:2:9
[INFO] [stdout]    |
[INFO] [stdout]  2 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/ellipses/mod.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub rotate: (T, T, T),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/elements/ellipses/mod.rs:64:1
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct Ellipsoid<T> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/elements/ellipses/ellipse.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 124 |     pub fn sample_polygon(&self, n: usize) -> Polygon<T> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/elements/ellipses/ellipse.rs:136:5
[INFO] [stdout]     |
[INFO] [stdout] 136 |     pub fn sample_polyline(&self, n: usize) -> Polyline<T> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/elements/ellipses/ellipse.rs:148:5
[INFO] [stdout]     |
[INFO] [stdout] 148 |     pub fn sample_x(&self, t: &T) -> T {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/elements/ellipses/ellipse.rs:151:5
[INFO] [stdout]     |
[INFO] [stdout] 151 |     pub fn sample_y(&self, t: &T) -> T {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/lines/line_2d/mod.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub fn as_vector(&self) -> Vector<T> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/elements/lines/line_2d/mod.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 | /     pub fn from_2_points<P>(start: P, end: P) -> Self
[INFO] [stdout] 63 | |         where
[INFO] [stdout] 64 | |             Point<T>: From<P>,
[INFO] [stdout]    | |______________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/elements/lines/line_3d/mod.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Vector3D<T> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/lines/line_3d/mod.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub dx: T,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/lines/line_3d/mod.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub dy: T,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/lines/line_3d/mod.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub dz: T,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/lines/line_3d/mod.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn quantile_point(&self, p: usize, q: usize) -> Point3D<T> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/elements/points/mod.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct Point4D<T> {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/points/point_2d/mod.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn ref_inner(&self) -> Point<&T> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/points/point_2d/mod.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | /     pub fn norm(&self) -> T
[INFO] [stdout] 28 | |     where
[INFO] [stdout] 29 | |         T: Float,
[INFO] [stdout]    | |_________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/elements/points/point_2d_set/mod.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct PointSet<T> {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/elements/points/point_2d_set/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub points: Vec<Point<T>>,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/elements/points/point_3d/mod.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Point3D<T> {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/elements/polygons/mod.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct RegularPolygon<T> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/polygons/mod.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub sides: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/polygons/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub center: Point<T>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/polygons/mod.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub radius: T,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/polygons/mod.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub rotate: T,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/elements/polygons/mod.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Polyline<T> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/polygons/mod.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub points: PointSet<T>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/polygons/mod.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub closed: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]  --> src/elements/polygons/dim3.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | /     pub fn new(points: &[Point3D<T>]) -> Self
[INFO] [stdout] 5 | |     where
[INFO] [stdout] 6 | |         T: Clone,
[INFO] [stdout]   | |_________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/polygons/dim3.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub fn edges(&self) -> impl Iterator<Item = Line3D<&T>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/elements/polygons/normal_2d/mod.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct Polygon<T> {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/polygons/normal_2d/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub points_set: PointSet<T>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/elements/polygons/normal_3d/mod.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Polygon3D<T> {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/elements/polygons/normal_3d/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub vertex: Vec<Point3D<T>>,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]  --> src/elements/polygons/regular.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub fn unit(sides: usize) -> Self {
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/elements/polygons/regular.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | /     pub fn new<P>(sides: usize, center: P, radius: T, rotate: T) -> Self
[INFO] [stdout] 11 | |     where
[INFO] [stdout] 12 | |         Point<T>: From<P>,
[INFO] [stdout]    | |__________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/polygons/regular.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub fn vertexes(&self) -> Vec<Point<T>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/polygons/regular.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn height(&self) -> T {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/polygons/regular.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn perimeter(&self) -> T {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/polygons/regular.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub fn central_angle(&self) -> T {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/polygons/regular.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub fn side_length(&self) -> T {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/polygons/regular.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn area(&self) -> T {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]  --> src/elements/rectangles/parallelogram.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | /     pub fn new<P>(anchor: P, side: (P, P)) -> Self
[INFO] [stdout] 5 | |     where
[INFO] [stdout] 6 | |         Point<T>: From<P>,
[INFO] [stdout]   | |__________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/rectangles/parallelogram.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub fn vertexes(&self) -> Vec<Point<T>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/rectangles/parallelogram.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn side_edges(&self) -> (Line<T>, Line<T>) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/elements/rectangles/rectangle_2d/mod.rs:183:5
[INFO] [stdout]     |
[INFO] [stdout] 183 | /     pub fn contains(&self, point: &Point<T>) -> bool
[INFO] [stdout] 184 | |     where
[INFO] [stdout] 185 | |         T: Clone + PartialOrd,
[INFO] [stdout]     | |______________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/elements/rectangles/rectangle_2d/constructors.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 | /     pub fn from_origin(width: T, height: T) -> Self
[INFO] [stdout] 108 | |         where
[INFO] [stdout] 109 | |             T: Clone + Zero +One + Add<Output=T> + Sub<Output=T> + Div<Output=T>,
[INFO] [stdout]     | |_________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a type alias
[INFO] [stdout]  --> src/errors/mod.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub type Result<T> = std::result::Result<T, ShapeErrorKind>;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/errors/mod.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct ShapeError {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/errors/mod.rs:13:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum ShapeErrorKind {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.02s
[INFO] running `Command { std: "docker" "inspect" "81ec54bc238d7ba9e6cef89449de38cc8070c60fca5f0d3e43d3ea723c7ec650", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "81ec54bc238d7ba9e6cef89449de38cc8070c60fca5f0d3e43d3ea723c7ec650", kill_on_drop: false }`
[INFO] [stdout] 81ec54bc238d7ba9e6cef89449de38cc8070c60fca5f0d3e43d3ea723c7ec650
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 17d7a3aedcd23e7f9bc6fc42ea8325b3e45ac895b6c72f2717a2ff62340c3231
[INFO] running `Command { std: "docker" "start" "-a" "17d7a3aedcd23e7f9bc6fc42ea8325b3e45ac895b6c72f2717a2ff62340c3231", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `macros::*`
[INFO] [stdout]   --> src/lib.rs:11:30
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use crate::{elements::*, macros::*, traits::*};
[INFO] [stdout]    |                              ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lhs`
[INFO] [stdout]   --> src/elements/points/point_2d/euclidean.rs:40:22
[INFO] [stdout]    |
[INFO] [stdout] 40 |                 let (lhs, rhs) = rhs.points.split_at(xs.len() / 2);
[INFO] [stdout]    |                      ^^^ help: if this is intentional, prefix it with an underscore: `_lhs`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rhs`
[INFO] [stdout]   --> src/elements/points/point_2d/euclidean.rs:40:27
[INFO] [stdout]    |
[INFO] [stdout] 40 |                 let (lhs, rhs) = rhs.points.split_at(xs.len() / 2);
[INFO] [stdout]    |                           ^^^ help: if this is intentional, prefix it with an underscore: `_rhs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/elements/points/point_2d/euclidean.rs:37:18
[INFO] [stdout]    |
[INFO] [stdout] 37 |             _ => unsafe {
[INFO] [stdout]    |                  ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rhs`
[INFO] [stdout]   --> src/elements/points/point_2d/euclidean.rs:74:33
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn euclidean_squared(&self, rhs: &Triangle<T>) -> T {
[INFO] [stdout]    |                                 ^^^ help: if this is intentional, prefix it with an underscore: `_rhs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PolygonIndex` is never constructed
[INFO] [stdout]   --> src/elements/polygons/mod.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct PolygonIndex {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/ellipses/mod.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub radius: T,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:2:9
[INFO] [stdout]    |
[INFO] [stdout]  2 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/ellipses/mod.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub rotate: (T, T, T),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/elements/ellipses/mod.rs:64:1
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct Ellipsoid<T> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/elements/ellipses/ellipse.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 124 |     pub fn sample_polygon(&self, n: usize) -> Polygon<T> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/elements/ellipses/ellipse.rs:136:5
[INFO] [stdout]     |
[INFO] [stdout] 136 |     pub fn sample_polyline(&self, n: usize) -> Polyline<T> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/elements/ellipses/ellipse.rs:148:5
[INFO] [stdout]     |
[INFO] [stdout] 148 |     pub fn sample_x(&self, t: &T) -> T {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/elements/ellipses/ellipse.rs:151:5
[INFO] [stdout]     |
[INFO] [stdout] 151 |     pub fn sample_y(&self, t: &T) -> T {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/lines/line_2d/mod.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub fn as_vector(&self) -> Vector<T> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/elements/lines/line_2d/mod.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 | /     pub fn from_2_points<P>(start: P, end: P) -> Self
[INFO] [stdout] 63 | |         where
[INFO] [stdout] 64 | |             Point<T>: From<P>,
[INFO] [stdout]    | |______________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/elements/lines/line_3d/mod.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Vector3D<T> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/lines/line_3d/mod.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub dx: T,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/lines/line_3d/mod.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub dy: T,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/lines/line_3d/mod.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub dz: T,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/lines/line_3d/mod.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn quantile_point(&self, p: usize, q: usize) -> Point3D<T> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/elements/points/mod.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct Point4D<T> {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/points/point_2d/mod.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn ref_inner(&self) -> Point<&T> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/points/point_2d/mod.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | /     pub fn norm(&self) -> T
[INFO] [stdout] 28 | |     where
[INFO] [stdout] 29 | |         T: Float,
[INFO] [stdout]    | |_________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/elements/points/point_2d_set/mod.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct PointSet<T> {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/elements/points/point_2d_set/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub points: Vec<Point<T>>,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/elements/points/point_3d/mod.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Point3D<T> {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/elements/polygons/mod.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct RegularPolygon<T> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/polygons/mod.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub sides: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/polygons/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub center: Point<T>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/polygons/mod.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub radius: T,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/polygons/mod.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub rotate: T,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/elements/polygons/mod.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Polyline<T> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/polygons/mod.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub points: PointSet<T>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/polygons/mod.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub closed: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]  --> src/elements/polygons/dim3.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | /     pub fn new(points: &[Point3D<T>]) -> Self
[INFO] [stdout] 5 | |     where
[INFO] [stdout] 6 | |         T: Clone,
[INFO] [stdout]   | |_________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/polygons/dim3.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub fn edges(&self) -> impl Iterator<Item = Line3D<&T>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/elements/polygons/normal_2d/mod.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct Polygon<T> {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/polygons/normal_2d/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub points_set: PointSet<T>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/elements/polygons/normal_3d/mod.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Polygon3D<T> {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/elements/polygons/normal_3d/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub vertex: Vec<Point3D<T>>,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling shape-core v0.1.17 (/opt/rustwide/workdir)
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]  --> src/elements/polygons/regular.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub fn unit(sides: usize) -> Self {
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/elements/polygons/regular.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | /     pub fn new<P>(sides: usize, center: P, radius: T, rotate: T) -> Self
[INFO] [stdout] 11 | |     where
[INFO] [stdout] 12 | |         Point<T>: From<P>,
[INFO] [stdout]    | |__________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/polygons/regular.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub fn vertexes(&self) -> Vec<Point<T>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/polygons/regular.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn height(&self) -> T {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/polygons/regular.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn perimeter(&self) -> T {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/polygons/regular.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub fn central_angle(&self) -> T {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/polygons/regular.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub fn side_length(&self) -> T {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/polygons/regular.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn area(&self) -> T {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]  --> src/elements/rectangles/parallelogram.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | /     pub fn new<P>(anchor: P, side: (P, P)) -> Self
[INFO] [stdout] 5 | |     where
[INFO] [stdout] 6 | |         Point<T>: From<P>,
[INFO] [stdout]   | |__________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/rectangles/parallelogram.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub fn vertexes(&self) -> Vec<Point<T>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/rectangles/parallelogram.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn side_edges(&self) -> (Line<T>, Line<T>) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/elements/rectangles/rectangle_2d/mod.rs:183:5
[INFO] [stdout]     |
[INFO] [stdout] 183 | /     pub fn contains(&self, point: &Point<T>) -> bool
[INFO] [stdout] 184 | |     where
[INFO] [stdout] 185 | |         T: Clone + PartialOrd,
[INFO] [stdout]     | |______________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/elements/rectangles/rectangle_2d/constructors.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 | /     pub fn from_origin(width: T, height: T) -> Self
[INFO] [stdout] 108 | |         where
[INFO] [stdout] 109 | |             T: Clone + Zero +One + Add<Output=T> + Sub<Output=T> + Div<Output=T>,
[INFO] [stdout]     | |_________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a type alias
[INFO] [stdout]  --> src/errors/mod.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub type Result<T> = std::result::Result<T, ShapeErrorKind>;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/errors/mod.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct ShapeError {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/errors/mod.rs:13:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum ShapeErrorKind {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macros::*`
[INFO] [stdout]   --> src/lib.rs:11:30
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use crate::{elements::*, macros::*, traits::*};
[INFO] [stdout]    |                              ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lhs`
[INFO] [stdout]   --> src/elements/points/point_2d/euclidean.rs:40:22
[INFO] [stdout]    |
[INFO] [stdout] 40 |                 let (lhs, rhs) = rhs.points.split_at(xs.len() / 2);
[INFO] [stdout]    |                      ^^^ help: if this is intentional, prefix it with an underscore: `_lhs`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rhs`
[INFO] [stdout]   --> src/elements/points/point_2d/euclidean.rs:40:27
[INFO] [stdout]    |
[INFO] [stdout] 40 |                 let (lhs, rhs) = rhs.points.split_at(xs.len() / 2);
[INFO] [stdout]    |                           ^^^ help: if this is intentional, prefix it with an underscore: `_rhs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/elements/points/point_2d/euclidean.rs:37:18
[INFO] [stdout]    |
[INFO] [stdout] 37 |             _ => unsafe {
[INFO] [stdout]    |                  ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rhs`
[INFO] [stdout]   --> src/elements/points/point_2d/euclidean.rs:74:33
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn euclidean_squared(&self, rhs: &Triangle<T>) -> T {
[INFO] [stdout]    |                                 ^^^ help: if this is intentional, prefix it with an underscore: `_rhs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PolygonIndex` is never constructed
[INFO] [stdout]   --> src/elements/polygons/mod.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct PolygonIndex {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/ellipses/mod.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub radius: T,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:2:9
[INFO] [stdout]    |
[INFO] [stdout]  2 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/ellipses/mod.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub rotate: (T, T, T),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/elements/ellipses/mod.rs:64:1
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct Ellipsoid<T> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/elements/ellipses/ellipse.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 124 |     pub fn sample_polygon(&self, n: usize) -> Polygon<T> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/elements/ellipses/ellipse.rs:136:5
[INFO] [stdout]     |
[INFO] [stdout] 136 |     pub fn sample_polyline(&self, n: usize) -> Polyline<T> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/elements/ellipses/ellipse.rs:148:5
[INFO] [stdout]     |
[INFO] [stdout] 148 |     pub fn sample_x(&self, t: &T) -> T {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/elements/ellipses/ellipse.rs:151:5
[INFO] [stdout]     |
[INFO] [stdout] 151 |     pub fn sample_y(&self, t: &T) -> T {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/lines/line_2d/mod.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub fn as_vector(&self) -> Vector<T> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/elements/lines/line_2d/mod.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 | /     pub fn from_2_points<P>(start: P, end: P) -> Self
[INFO] [stdout] 63 | |         where
[INFO] [stdout] 64 | |             Point<T>: From<P>,
[INFO] [stdout]    | |______________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/elements/lines/line_3d/mod.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Vector3D<T> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/lines/line_3d/mod.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub dx: T,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/lines/line_3d/mod.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub dy: T,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/lines/line_3d/mod.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub dz: T,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/lines/line_3d/mod.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn quantile_point(&self, p: usize, q: usize) -> Point3D<T> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/elements/points/mod.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct Point4D<T> {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/points/point_2d/mod.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn ref_inner(&self) -> Point<&T> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/points/point_2d/mod.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | /     pub fn norm(&self) -> T
[INFO] [stdout] 28 | |     where
[INFO] [stdout] 29 | |         T: Float,
[INFO] [stdout]    | |_________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/elements/points/point_2d_set/mod.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct PointSet<T> {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/elements/points/point_2d_set/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub points: Vec<Point<T>>,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/elements/points/point_3d/mod.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Point3D<T> {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/elements/polygons/mod.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct RegularPolygon<T> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/polygons/mod.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub sides: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/polygons/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub center: Point<T>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/polygons/mod.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub radius: T,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/polygons/mod.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub rotate: T,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/elements/polygons/mod.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Polyline<T> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/polygons/mod.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub points: PointSet<T>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/polygons/mod.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub closed: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]  --> src/elements/polygons/dim3.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | /     pub fn new(points: &[Point3D<T>]) -> Self
[INFO] [stdout] 5 | |     where
[INFO] [stdout] 6 | |         T: Clone,
[INFO] [stdout]   | |_________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/polygons/dim3.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub fn edges(&self) -> impl Iterator<Item = Line3D<&T>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/elements/polygons/normal_2d/mod.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct Polygon<T> {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/elements/polygons/normal_2d/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub points_set: PointSet<T>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/elements/polygons/normal_3d/mod.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Polygon3D<T> {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/elements/polygons/normal_3d/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub vertex: Vec<Point3D<T>>,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]  --> src/elements/polygons/regular.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub fn unit(sides: usize) -> Self {
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/elements/polygons/regular.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | /     pub fn new<P>(sides: usize, center: P, radius: T, rotate: T) -> Self
[INFO] [stdout] 11 | |     where
[INFO] [stdout] 12 | |         Point<T>: From<P>,
[INFO] [stdout]    | |__________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/polygons/regular.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub fn vertexes(&self) -> Vec<Point<T>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/polygons/regular.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn height(&self) -> T {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/polygons/regular.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn perimeter(&self) -> T {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/polygons/regular.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub fn central_angle(&self) -> T {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/polygons/regular.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub fn side_length(&self) -> T {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/polygons/regular.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn area(&self) -> T {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]  --> src/elements/rectangles/parallelogram.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | /     pub fn new<P>(anchor: P, side: (P, P)) -> Self
[INFO] [stdout] 5 | |     where
[INFO] [stdout] 6 | |         Point<T>: From<P>,
[INFO] [stdout]   | |__________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/rectangles/parallelogram.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub fn vertexes(&self) -> Vec<Point<T>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/elements/rectangles/parallelogram.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn side_edges(&self) -> (Line<T>, Line<T>) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/elements/rectangles/rectangle_2d/mod.rs:183:5
[INFO] [stdout]     |
[INFO] [stdout] 183 | /     pub fn contains(&self, point: &Point<T>) -> bool
[INFO] [stdout] 184 | |     where
[INFO] [stdout] 185 | |         T: Clone + PartialOrd,
[INFO] [stdout]     | |______________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/elements/rectangles/rectangle_2d/constructors.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 | /     pub fn from_origin(width: T, height: T) -> Self
[INFO] [stdout] 108 | |         where
[INFO] [stdout] 109 | |             T: Clone + Zero +One + Add<Output=T> + Sub<Output=T> + Div<Output=T>,
[INFO] [stdout]     | |_________________________________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a type alias
[INFO] [stdout]  --> src/errors/mod.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub type Result<T> = std::result::Result<T, ShapeErrorKind>;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/errors/mod.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct ShapeError {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/errors/mod.rs:13:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum ShapeErrorKind {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.60s
[INFO] running `Command { std: "docker" "inspect" "17d7a3aedcd23e7f9bc6fc42ea8325b3e45ac895b6c72f2717a2ff62340c3231", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "17d7a3aedcd23e7f9bc6fc42ea8325b3e45ac895b6c72f2717a2ff62340c3231", kill_on_drop: false }`
[INFO] [stdout] 17d7a3aedcd23e7f9bc6fc42ea8325b3e45ac895b6c72f2717a2ff62340c3231
