zkp-stark 0.1.2

Implementation of the STARK ZK-proof system
Documentation
Build #189862 2019-10-07T15:00:29.611577+00:00
# rustc version
rustc 1.39.0-nightly (66bf391c3 2019-09-23)# docs.rs version
docsrs 0.6.0 (62819fc 2019-10-07)# build log
[INFO] running `"docker" "create" "-v" "/home/cratesfyi/workspace/builds/zkp-stark-0.1.2/target:/opt/rustwide/target:rw,Z" "-v" "/home/cratesfyi/workspace/builds/zkp-stark-0.1.2/source:/opt/rustwide/workdir:ro,Z" "-v" "/home/cratesfyi/workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/home/cratesfyi/workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=1001" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=-Z unstable-options --resource-suffix -20190923-1.39.0-nightly-66bf391c3 --static-root-path / --disable-per-crate-search --extern-html-root-url itertools=https://docs.rs/itertools/0.8.0 --extern-html-root-url zkp_hash=https://docs.rs/zkp-hash/0.1.0 --extern-html-root-url log=https://docs.rs/log/0.4.8 --extern-html-root-url no_std_compat=https://docs.rs/no-std-compat/0.1.1 --extern-html-root-url env_logger=https://docs.rs/env_logger/0.6.2 --extern-html-root-url zkp_elliptic_curve=https://docs.rs/zkp-elliptic-curve/0.1.0 --extern-html-root-url zkp_primefield=https://docs.rs/zkp-primefield/0.1.1 --extern-html-root-url lazy_static=https://docs.rs/lazy_static/1.4.0 --extern-html-root-url zkp_mmap_vec=https://docs.rs/zkp-mmap-vec/0.1.0 --extern-html-root-url tiny_keccak=https://docs.rs/tiny-keccak/1.5.0 --extern-html-root-url zkp_u256=https://docs.rs/zkp-u256/0.1.1 --extern-html-root-url rayon=https://docs.rs/rayon/1.2.0 --extern-html-root-url zkp_elliptic_curve_crypto=https://docs.rs/zkp-elliptic-curve-crypto/0.1.0 --extern-html-root-url hex=https://docs.rs/hex/0.4.0 --extern-html-root-url zkp_merkle_tree=https://docs.rs/zkp-merkle-tree/0.1.0 --extern-html-root-url zkp_macros_decl=https://docs.rs/zkp-macros-decl/0.1.0 --extern-html-root-url zkp_logging_allocator=https://docs.rs/zkp-logging-allocator/0.1.0 --html-in-header .cargo/katex-header.html" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "3221225472" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2019-09-24" "doc" "--lib" "--no-deps" "--target" "x86_64-unknown-linux-gnu"`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] f04a1328afdd990f0687ccd1c93168b8a5b0ed577470db56ec81e18b74ca2769
[INFO] running `"docker" "start" "-a" "f04a1328afdd990f0687ccd1c93168b8a5b0ed577470db56ec81e18b74ca2769"`
[INFO] [stderr]    Compiling proc-macro2 v1.0.5
[INFO] [stderr]    Compiling unicode-xid v0.2.0
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling libc v0.2.62
[INFO] [stderr]    Compiling syn v1.0.5
[INFO] [stderr]    Compiling getrandom v0.1.12
[INFO] [stderr]    Compiling hex v0.4.0
[INFO] [stderr]     Checking cfg-if v0.1.10
[INFO] [stderr]    Compiling arrayvec v0.4.11
[INFO] [stderr]     Checking spin v0.5.2
[INFO] [stderr]     Checking ppv-lite86 v0.2.5
[INFO] [stderr]    Compiling crunchy v0.2.2
[INFO] [stderr]     Checking nodrop v0.1.13
[INFO] [stderr]     Checking scopeguard v1.0.0
[INFO] [stderr]    Compiling memchr v2.2.1
[INFO] [stderr]     Checking either v1.5.3
[INFO] [stderr]    Compiling rayon-core v1.6.0
[INFO] [stderr]    Compiling log v0.4.8
[INFO] [stderr]     Checking no-std-compat v0.1.1
[INFO] [stderr]     Checking remove_dir_all v0.5.2
[INFO] [stderr]     Checking quick-error v1.2.2
[INFO] [stderr]     Checking regex-syntax v0.6.12
[INFO] [stderr]     Checking zkp-error-utils v0.1.0
[INFO] [stderr]     Checking termcolor v1.0.5
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]     Checking itertools v0.8.0
[INFO] [stderr]     Checking humantime v1.3.0
[INFO] [stderr]     Checking c2-chacha v0.2.2
[INFO] [stderr]     Checking crossbeam-utils v0.6.6
[INFO] [stderr]     Checking thread_local v0.3.6
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]    Compiling quote v1.0.2
[INFO] [stderr]     Checking num_cpus v1.10.1
[INFO] [stderr]     Checking memmap v0.7.0
[INFO] [stderr]     Checking atty v0.2.13
[INFO] [stderr]     Checking crossbeam-queue v0.1.2
[INFO] [stderr]     Checking tiny-keccak v1.5.0
[INFO] [stderr]     Checking zkp-logging-allocator v0.1.0
[INFO] [stderr]     Checking aho-corasick v0.7.6
[INFO] [stderr]    Compiling memoffset v0.5.1
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking crossbeam-epoch v0.7.2
[INFO] [stderr]     Checking rand_chacha v0.2.1
[INFO] [stderr]     Checking rand v0.7.2
[INFO] [stderr]     Checking crossbeam-deque v0.7.1
[INFO] [stderr]     Checking regex v1.3.1
[INFO] [stderr]     Checking rayon v1.2.0
[INFO] [stderr]     Checking tempfile v3.1.0
[INFO] [stderr]     Checking zkp-mmap-vec v0.1.0
[INFO] [stderr]     Checking env_logger v0.6.2
[INFO] [stderr]    Compiling zkp-macros-lib v0.1.0
[INFO] [stderr]    Compiling proc-macro-hack v0.5.10
[INFO] [stderr]    Compiling zkp-macros-impl v0.1.0
[INFO] [stderr]     Checking zkp-macros-decl v0.1.0
[INFO] [stderr]     Checking zkp-u256 v0.1.1
[INFO] [stderr]     Checking zkp-primefield v0.1.1
[INFO] [stderr]     Checking zkp-elliptic-curve v0.1.0
[INFO] [stderr]     Checking zkp-hash v0.1.0
[INFO] [stderr]     Checking zkp-merkle-tree v0.1.0
[INFO] [stderr]     Checking zkp-elliptic-curve-crypto v0.1.0
[INFO] [stderr]  Documenting zkp-stark v0.1.2 (/opt/rustwide/workdir)
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/lib.rs:5:1
[INFO] [stderr]    |
[INFO] [stderr] 5  | / #![cfg_attr(not(feature = "std"), no_std)]
[INFO] [stderr] 6  | | #![forbid(unsafe_code)]
[INFO] [stderr] 7  | | #![warn(
[INFO] [stderr] 8  | |     // Enable sets of warnings
[INFO] [stderr] ...  |
[INFO] [stderr] 90 | |     }
[INFO] [stderr] 91 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr]    |
[INFO] [stderr] note: lint level defined here
[INFO] [stderr]   --> src/lib.rs:29:5
[INFO] [stderr]    |
[INFO] [stderr] 29 |     missing_doc_code_examples,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/lib.rs:66:1
[INFO] [stderr]    |
[INFO] [stderr] 66 | pub use zkp_primefield as primefield;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/constraints.rs:20:1
[INFO] [stderr]    |
[INFO] [stderr] 20 | / /// Constraints for Stark proofs
[INFO] [stderr] 21 | | ///
[INFO] [stderr] 22 | | /// Contains the constraint expressions that apply to the trace table in
[INFO] [stderr] 23 | | /// addition to various tuning parameters that determine how proofs are
[INFO] [stderr] ...  |
[INFO] [stderr] 27 | | /// **Note**: This does not including the constraint system or anything
[INFO] [stderr] 28 | | /// about the claim to be proven.
[INFO] [stderr]    | |_________________________________^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/constraints.rs:33:5
[INFO] [stderr]    |
[INFO] [stderr] 33 |     channel_seed:   Vec<u8>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/constraints.rs:34:5
[INFO] [stderr]    |
[INFO] [stderr] 34 |     trace_nrows:    usize,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/constraints.rs:35:5
[INFO] [stderr]    |
[INFO] [stderr] 35 |     trace_ncolumns: usize,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/constraints.rs:37:5
[INFO] [stderr]    |
[INFO] [stderr] 37 |     expressions: Vec<RationalExpression>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/constraints.rs:39:5
[INFO] [stderr]    |
[INFO] [stderr] 39 | /     /// The blowup factor
[INFO] [stderr] 40 | |     ///
[INFO] [stderr] 41 | |     /// The size of the low-degree-extension domain compared to the trace
[INFO] [stderr] 42 | |     /// domain. Should be a power of two. Recommended values are 16, 32 or 64.
[INFO] [stderr]    | |______________________________________________________________________________^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/constraints.rs:45:5
[INFO] [stderr]    |
[INFO] [stderr] 45 | /     /// Proof of work difficulty
[INFO] [stderr] 46 | |     ///
[INFO] [stderr] 47 | |     /// The difficulty of the proof of work step in number of leading zero bits
[INFO] [stderr] 48 | |     /// required.
[INFO] [stderr]    | |_________________^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/constraints.rs:51:5
[INFO] [stderr]    |
[INFO] [stderr] 51 |     /// Number of queries made to the oracles
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/constraints.rs:54:5
[INFO] [stderr]    |
[INFO] [stderr] 54 | /     /// Number of FRI reductions between steps
[INFO] [stderr] 55 | |     ///
[INFO] [stderr] 56 | |     /// After the initial LDE polynomial is committed, several rounds of FRI
[INFO] [stderr] 57 | |     /// degree reduction are done. Entries in the vector specify how many
[INFO] [stderr] ...  |
[INFO] [stderr] 60 | |     /// After `fri_layout.sum()` reductions are done, the remaining polynomial
[INFO] [stderr] 61 | |     /// is written explicitly in coefficient form.
[INFO] [stderr]    | |__________________________________________________^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/polynomial.rs:12:1
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub struct DensePolynomial(MmapVec<FieldElement>);
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/polynomial.rs:12:28
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub struct DensePolynomial(MmapVec<FieldElement>);
[INFO] [stderr]    |                            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]  --> src/proof.rs:4:1
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub struct Proof(Vec<u8>);
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]  --> src/proof.rs:4:18
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub struct Proof(Vec<u8>);
[INFO] [stderr]   |                  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/trace_table.rs:14:1
[INFO] [stderr]    |
[INFO] [stderr] 14 | / pub struct TraceTable {
[INFO] [stderr] 15 | |     trace_length: usize,
[INFO] [stderr] 16 | |     num_columns:  usize,
[INFO] [stderr] 17 | |     values:       MmapVec<FieldElement>,
[INFO] [stderr] 18 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/trace_table.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 15 |     trace_length: usize,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/trace_table.rs:16:5
[INFO] [stderr]    |
[INFO] [stderr] 16 |     num_columns:  usize,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/trace_table.rs:17:5
[INFO] [stderr]    |
[INFO] [stderr] 17 |     values:       MmapVec<FieldElement>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]  --> src/constraints.rs:7:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | / pub enum Error {
[INFO] [stderr] 8 | |     InvalidTraceLength,
[INFO] [stderr] 9 | | }
[INFO] [stderr]   | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]  --> src/constraints.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 |     InvalidTraceLength,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:12:1
[INFO] [stderr]    |
[INFO] [stderr] 12 | / pub enum RationalExpression {
[INFO] [stderr] 13 | |     X,
[INFO] [stderr] 14 | |     Constant(FieldElement),
[INFO] [stderr] 15 | |     Trace(usize, isize),
[INFO] [stderr] ...  |
[INFO] [stderr] 21 | |     Exp(Box<RationalExpression>, usize),
[INFO] [stderr] 22 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 |     X,
[INFO] [stderr]    |     ^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 14 |     Constant(FieldElement),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 15 |     Trace(usize, isize),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:16:5
[INFO] [stderr]    |
[INFO] [stderr] 16 |     Polynomial(DensePolynomial, Box<RationalExpression>),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:17:5
[INFO] [stderr]    |
[INFO] [stderr] 17 |     Add(Box<RationalExpression>, Box<RationalExpression>),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 18 |     Neg(Box<RationalExpression>),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 19 |     Mul(Box<RationalExpression>, Box<RationalExpression>),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 20 |     Inv(Box<RationalExpression>),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 21 |     Exp(Box<RationalExpression>, usize),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/verifier.rs:17:1
[INFO] [stderr]    |
[INFO] [stderr] 17 | / pub enum Error {
[INFO] [stderr] 18 | |     RootUnavailable,
[INFO] [stderr] 19 | |     InvalidPoW,
[INFO] [stderr] 20 | |     InvalidLDECommitment,
[INFO] [stderr] ...  |
[INFO] [stderr] 28 | |     Merkle(MerkleError),
[INFO] [stderr] 29 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/verifier.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 18 |     RootUnavailable,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/verifier.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 19 |     InvalidPoW,
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/verifier.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 20 |     InvalidLDECommitment,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/verifier.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 21 |     InvalidConstraintCommitment,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/verifier.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 22 |     InvalidFriCommitment,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/verifier.rs:23:5
[INFO] [stderr]    |
[INFO] [stderr] 23 |     HashMapFailure,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/verifier.rs:24:5
[INFO] [stderr]    |
[INFO] [stderr] 24 |     ProofTooLong,
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/verifier.rs:25:5
[INFO] [stderr]    |
[INFO] [stderr] 25 |     OodsCalculationFailure,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/verifier.rs:26:5
[INFO] [stderr]    |
[INFO] [stderr] 26 |     OodsMismatch,
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/verifier.rs:27:5
[INFO] [stderr]    |
[INFO] [stderr] 27 |     FriCalculationFailure,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/verifier.rs:28:5
[INFO] [stderr]    |
[INFO] [stderr] 28 |     Merkle(MerkleError),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/prover.rs:25:1
[INFO] [stderr]    |
[INFO] [stderr] 25 | / pub enum Error {
[INFO] [stderr] 26 | |     RootUnavailable,
[INFO] [stderr] 27 | |     MerkleFailed(MerkleError),
[INFO] [stderr] 28 | |     VerificationFailed(VerifierError),
[INFO] [stderr] 29 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/prover.rs:26:5
[INFO] [stderr]    |
[INFO] [stderr] 26 |     RootUnavailable,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/prover.rs:27:5
[INFO] [stderr]    |
[INFO] [stderr] 27 |     MerkleFailed(MerkleError),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/prover.rs:28:5
[INFO] [stderr]    |
[INFO] [stderr] 28 |     VerificationFailed(VerifierError),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/verifier.rs:74:1
[INFO] [stderr]     |
[INFO] [stderr] 74  | / /// # Stark verify
[INFO] [stderr] 75  | | ///
[INFO] [stderr] 76  | | /// ## Input
[INFO] [stderr] 77  | | ///
[INFO] [stderr] ...   |
[INFO] [stderr] 168 | | ///
[INFO] [stderr] 169 | | /// <!-- TODO: ellaborate FRI verification -->
[INFO] [stderr]     | |______________________________________________^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/prover.rs:137:1
[INFO] [stderr]     |
[INFO] [stderr] 137 | / /// # Produce a Stark proof.
[INFO] [stderr] 138 | | ///
[INFO] [stderr] 139 | | /// ## Input
[INFO] [stderr] 140 | | ///
[INFO] [stderr] ...   |
[INFO] [stderr] 341 | | /// with merkle proofs to that layer. This process is repeated for all FRI layer
[INFO] [stderr] 342 | | /// commitments.
[INFO] [stderr]     | |________________^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/channel.rs:2:1
[INFO] [stderr]     |
[INFO] [stderr] 2   | / #![allow(clippy::module_name_repetitions)]
[INFO] [stderr] 3   | | use crate::proof_of_work;
[INFO] [stderr] 4   | | use std::prelude::v1::*;
[INFO] [stderr] 5   | | use tiny_keccak::Keccak;
[INFO] [stderr] ...   |
[INFO] [stderr] 452 | |     }
[INFO] [stderr] 453 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/constraints.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr] 1   | / use crate::rational_expression::RationalExpression;
[INFO] [stderr] 2   | | use itertools::Itertools;
[INFO] [stderr] 3   | | use std::{fmt, prelude::v1::*};
[INFO] [stderr] 4   | | use zkp_primefield::FieldElement;
[INFO] [stderr] ...   |
[INFO] [stderr] 236 | |     }
[INFO] [stderr] 237 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/constraints.rs:65:1
[INFO] [stderr]     |
[INFO] [stderr] 65  | / impl Constraints {
[INFO] [stderr] 66  | |     fn default_fri_layout(trace_nrows: usize) -> Vec<usize> {
[INFO] [stderr] 67  | |         // The binary logarithm of the final layer polynomial degree.
[INFO] [stderr] 68  | |         const LOG2_TARGET: usize = 8;
[INFO] [stderr] ...   |
[INFO] [stderr] 202 | |     }
[INFO] [stderr] 203 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/constraints.rs:88:5
[INFO] [stderr]     |
[INFO] [stderr] 88  | /     pub fn from_expressions(
[INFO] [stderr] 89  | |         (trace_nrows, trace_ncolumns): (usize, usize),
[INFO] [stderr] 90  | |         channel_seed: Vec<u8>,
[INFO] [stderr] 91  | |         expressions: Vec<RationalExpression>,
[INFO] [stderr] ...   |
[INFO] [stderr] 108 | |         })
[INFO] [stderr] 109 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/constraints.rs:111:5
[INFO] [stderr]     |
[INFO] [stderr] 111 | /     pub fn channel_seed(&self) -> &[u8] {
[INFO] [stderr] 112 | |         &self.channel_seed
[INFO] [stderr] 113 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/constraints.rs:115:5
[INFO] [stderr]     |
[INFO] [stderr] 115 | /     pub fn trace_nrows(&self) -> usize {
[INFO] [stderr] 116 | |         self.trace_nrows
[INFO] [stderr] 117 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/constraints.rs:119:5
[INFO] [stderr]     |
[INFO] [stderr] 119 | /     pub fn trace_ncolumns(&self) -> usize {
[INFO] [stderr] 120 | |         self.trace_ncolumns
[INFO] [stderr] 121 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/constraints.rs:123:5
[INFO] [stderr]     |
[INFO] [stderr] 123 | /     pub fn len(&self) -> usize {
[INFO] [stderr] 124 | |         self.expressions.len()
[INFO] [stderr] 125 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/constraints.rs:127:5
[INFO] [stderr]     |
[INFO] [stderr] 127 | /     pub fn is_empty(&self) -> bool {
[INFO] [stderr] 128 | |         self.expressions().is_empty()
[INFO] [stderr] 129 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/constraints.rs:131:5
[INFO] [stderr]     |
[INFO] [stderr] 131 | /     pub fn expressions(&self) -> &[RationalExpression] {
[INFO] [stderr] 132 | |         &self.expressions
[INFO] [stderr] 133 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/constraints.rs:135:5
[INFO] [stderr]     |
[INFO] [stderr] 135 | /     pub fn degree(&self) -> usize {
[INFO] [stderr] 136 | |         self.expressions
[INFO] [stderr] 137 | |             .iter()
[INFO] [stderr] 138 | |             .map(|c| {
[INFO] [stderr] ...   |
[INFO] [stderr] 143 | |             .expect("no constraints")
[INFO] [stderr] 144 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/constraints.rs:147:5
[INFO] [stderr]     |
[INFO] [stderr] 147 | /     pub fn security_bits(&self) -> usize {
[INFO] [stderr] 148 | |         // Our conservative formula is (1/2^blowup_log)^(queries/2)*(1/2^pow_bits)
[INFO] [stderr] 149 | |         // So the bit security should be blowup_log*(queries/2) + pow_bits
[INFO] [stderr] 150 | |         let blowup_log = (64 - (self.blowup as u64).leading_zeros()) as usize;
[INFO] [stderr] 151 | |         blowup_log * (self.num_queries / 2) + self.pow_bits
[INFO] [stderr] 152 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/constraints.rs:159:5
[INFO] [stderr]     |
[INFO] [stderr] 159 | /     pub fn max_proof_size(&self) -> usize {
[INFO] [stderr] 160 | |         let trace_len_log = self.trace_nrows().trailing_zeros() as usize;
[INFO] [stderr] 161 | |         // First we decommit two proofs for each query [one which is the evaluation
[INFO] [stderr] 162 | |         // domain decommitment and one is the constraints]
[INFO] [stderr] ...   |
[INFO] [stderr] 181 | |         32 * total_decommitment
[INFO] [stderr] 182 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/polynomial.rs:2:1
[INFO] [stderr]     |
[INFO] [stderr] 2   | / #![allow(clippy::module_name_repetitions)]
[INFO] [stderr] 3   | | #[cfg(feature = "std")]
[INFO] [stderr] 4   | | use rayon::prelude::*;
[INFO] [stderr] 5   | | use std::prelude::v1::*;
[INFO] [stderr] ...   |
[INFO] [stderr] 148 | |     }
[INFO] [stderr] 149 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/polynomial.rs:22:1
[INFO] [stderr]     |
[INFO] [stderr] 22  | / impl DensePolynomial {
[INFO] [stderr] 23  | |     pub fn from_mmap_vec(coefficients: MmapVec<FieldElement>) -> Self {
[INFO] [stderr] 24  | |         assert!(coefficients.len().is_power_of_two());
[INFO] [stderr] 25  | |         Self(coefficients)
[INFO] [stderr] ...   |
[INFO] [stderr] 112 | |     }
[INFO] [stderr] 113 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/polynomial.rs:23:5
[INFO] [stderr]    |
[INFO] [stderr] 23 | /     pub fn from_mmap_vec(coefficients: MmapVec<FieldElement>) -> Self {
[INFO] [stderr] 24 | |         assert!(coefficients.len().is_power_of_two());
[INFO] [stderr] 25 | |         Self(coefficients)
[INFO] [stderr] 26 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/polynomial.rs:30:5
[INFO] [stderr]    |
[INFO] [stderr] 30 | /     pub fn new(coefficients: &[FieldElement]) -> Self {
[INFO] [stderr] 31 | |         assert!(coefficients.len().is_power_of_two());
[INFO] [stderr] 32 | |         let mut vec = MmapVec::with_capacity(coefficients.len());
[INFO] [stderr] 33 | |         vec.extend_from_slice(coefficients);
[INFO] [stderr] 34 | |         Self(vec)
[INFO] [stderr] 35 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/polynomial.rs:37:5
[INFO] [stderr]    |
[INFO] [stderr] 37 | /     pub fn zeros(size: usize) -> Self {
[INFO] [stderr] 38 | |         assert!(size.is_power_of_two());
[INFO] [stderr] 39 | |         let mut vec = MmapVec::with_capacity(size);
[INFO] [stderr] 40 | |         vec.resize(size, FieldElement::ZERO);
[INFO] [stderr] 41 | |         Self(vec)
[INFO] [stderr] 42 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/polynomial.rs:46:5
[INFO] [stderr]    |
[INFO] [stderr] 46 | /     pub fn len(&self) -> usize {
[INFO] [stderr] 47 | |         self.0.len()
[INFO] [stderr] 48 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/polynomial.rs:50:5
[INFO] [stderr]    |
[INFO] [stderr] 50 | /     pub fn is_empty(&self) -> bool {
[INFO] [stderr] 51 | |         self.0.is_empty()
[INFO] [stderr] 52 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/polynomial.rs:54:5
[INFO] [stderr]    |
[INFO] [stderr] 54 | /     pub fn coefficients(&self) -> &[FieldElement] {
[INFO] [stderr] 55 | |         &self.0
[INFO] [stderr] 56 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/polynomial.rs:60:5
[INFO] [stderr]    |
[INFO] [stderr] 60 | /     pub fn degree(&self) -> usize {
[INFO] [stderr] 61 | |         let mut degree = self.len() - 1;
[INFO] [stderr] 62 | |         while self.0[degree] == FieldElement::ZERO && degree > 0 {
[INFO] [stderr] 63 | |             degree -= 1;
[INFO] [stderr] 64 | |         }
[INFO] [stderr] 65 | |         degree
[INFO] [stderr] 66 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/polynomial.rs:68:5
[INFO] [stderr]    |
[INFO] [stderr] 68 | /     pub fn evaluate(&self, x: &FieldElement) -> FieldElement {
[INFO] [stderr] 69 | |         let mut result = FieldElement::ZERO;
[INFO] [stderr] 70 | |         for coefficient in self.0.iter().rev() {
[INFO] [stderr] 71 | |             result *= x;
[INFO] [stderr] ...  |
[INFO] [stderr] 74 | |         result
[INFO] [stderr] 75 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/polynomial.rs:78:5
[INFO] [stderr]    |
[INFO] [stderr] 78 | /     pub fn low_degree_extension(&self, blowup: usize) -> MmapVec<FieldElement> {
[INFO] [stderr] 79 | |         // TODO: shift polynomial by FieldElement::GENERATOR outside of this function.
[INFO] [stderr] 80 | |         const SHIFT_FACTOR: FieldElement = FieldElement::GENERATOR;
[INFO] [stderr] 81 | |         let length = self.len() * blowup;
[INFO] [stderr] ...  |
[INFO] [stderr] 98 | |         result
[INFO] [stderr] 99 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/polynomial.rs:101:5
[INFO] [stderr]     |
[INFO] [stderr] 101 | /     /// Divide out a point and add the scaled result to target.
[INFO] [stderr] 102 | |     ///
[INFO] [stderr] 103 | |     /// target += c * (P(X) - P(z)) / (X - z)
[INFO] [stderr] 104 | |     /// See: https://en.wikipedia.org/wiki/Synthetic_division
[INFO] [stderr]     | |_____________________________________________________________^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/proof.rs:1:1
[INFO] [stderr]    |
[INFO] [stderr] 1  | / use std::prelude::v1::*;
[INFO] [stderr] 2  | |
[INFO] [stderr] 3  | | #[derive(Clone, Debug, PartialEq)]
[INFO] [stderr] 4  | | pub struct Proof(Vec<u8>);
[INFO] [stderr] ...  |
[INFO] [stderr] 13 | |     }
[INFO] [stderr] 14 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/proof.rs:6:1
[INFO] [stderr]    |
[INFO] [stderr] 6  | / impl Proof {
[INFO] [stderr] 7  | |     pub fn from_bytes(bytes: Vec<u8>) -> Self {
[INFO] [stderr] 8  | |         Self(bytes)
[INFO] [stderr] 9  | |     }
[INFO] [stderr] ...  |
[INFO] [stderr] 13 | |     }
[INFO] [stderr] 14 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]  --> src/proof.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | /     pub fn from_bytes(bytes: Vec<u8>) -> Self {
[INFO] [stderr] 8 | |         Self(bytes)
[INFO] [stderr] 9 | |     }
[INFO] [stderr]   | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/proof.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | /     pub fn as_bytes(&self) -> &[u8] {
[INFO] [stderr] 12 | |         &self.0
[INFO] [stderr] 13 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/proof_of_work.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr] 1   | / #[cfg(all(feature = "std", feature = "prover"))]
[INFO] [stderr] 2   | | use log::info;
[INFO] [stderr] 3   | | #[cfg(all(feature = "std", feature = "prover"))]
[INFO] [stderr] 4   | | use rayon::prelude::*;
[INFO] [stderr] ...   |
[INFO] [stderr] 138 | |     }
[INFO] [stderr] 139 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/rational_expression.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr] 1   | / use crate::polynomial::DensePolynomial;
[INFO] [stderr] 2   | | use std::{
[INFO] [stderr] 3   | |     iter::Sum,
[INFO] [stderr] 4   | |     ops::{Add, Div, Mul, Sub},
[INFO] [stderr] ...   |
[INFO] [stderr] 164 | |     }
[INFO] [stderr] 165 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:24:1
[INFO] [stderr]    |
[INFO] [stderr] 24 | / impl RationalExpression {
[INFO] [stderr] 25 | |     pub fn neg(&self) -> Self {
[INFO] [stderr] 26 | |         Self::Neg(Box::new(self.clone()))
[INFO] [stderr] 27 | |     }
[INFO] [stderr] ...  |
[INFO] [stderr] 35 | |     }
[INFO] [stderr] 36 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:25:5
[INFO] [stderr]    |
[INFO] [stderr] 25 | /     pub fn neg(&self) -> Self {
[INFO] [stderr] 26 | |         Self::Neg(Box::new(self.clone()))
[INFO] [stderr] 27 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:29:5
[INFO] [stderr]    |
[INFO] [stderr] 29 | /     pub fn inv(&self) -> Self {
[INFO] [stderr] 30 | |         Self::Inv(Box::new(self.clone()))
[INFO] [stderr] 31 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:33:5
[INFO] [stderr]    |
[INFO] [stderr] 33 | /     pub fn pow(&self, exponent: usize) -> Self {
[INFO] [stderr] 34 | |         Self::Exp(Box::new(self.clone()), exponent)
[INFO] [stderr] 35 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/rational_expression.rs:99:1
[INFO] [stderr]     |
[INFO] [stderr] 99  | / impl RationalExpression {
[INFO] [stderr] 100 | |     /// Numerator and denominator degree of the expression in X.
[INFO] [stderr] 101 | |     ///
[INFO] [stderr] 102 | |     /// Calculates an upper bound. Cancelations may occur.
[INFO] [stderr] ...   |
[INFO] [stderr] 164 | |     }
[INFO] [stderr] 165 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/rational_expression.rs:100:5
[INFO] [stderr]     |
[INFO] [stderr] 100 | /     /// Numerator and denominator degree of the expression in X.
[INFO] [stderr] 101 | |     ///
[INFO] [stderr] 102 | |     /// Calculates an upper bound. Cancelations may occur.
[INFO] [stderr]     | |__________________________________________________________^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/rational_expression.rs:108:5
[INFO] [stderr]     |
[INFO] [stderr] 108 | /     pub fn trace_degree(&self) -> (usize, usize) {
[INFO] [stderr] 109 | |         self.degree_impl(0, 1)
[INFO] [stderr] 110 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/rational_expression.rs:147:5
[INFO] [stderr]     |
[INFO] [stderr] 147 | /     pub fn evaluate(
[INFO] [stderr] 148 | |         &self,
[INFO] [stderr] 149 | |         x: &FieldElement,
[INFO] [stderr] 150 | |         trace: &dyn Fn(usize, isize) -> FieldElement,
[INFO] [stderr] ...   |
[INFO] [stderr] 163 | |         }
[INFO] [stderr] 164 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/traits.rs:1:1
[INFO] [stderr]    |
[INFO] [stderr] 1  | / #[cfg(feature = "prover")]
[INFO] [stderr] 2  | | use crate::{prove, ProverError, TraceTable};
[INFO] [stderr] 3  | | use crate::{verify, Constraints, Proof, VerifierError};
[INFO] [stderr] 4  | |
[INFO] [stderr] ...  |
[INFO] [stderr] 80 | |     }
[INFO] [stderr] 81 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/traits.rs:5:1
[INFO] [stderr]    |
[INFO] [stderr] 5  | / pub trait Verifiable {
[INFO] [stderr] 6  | |     fn constraints(&self) -> Constraints;
[INFO] [stderr] 7  | |
[INFO] [stderr] 8  | |     fn verify(&self, proof: &Proof) -> Result<(), VerifierError> {
[INFO] [stderr] ...  |
[INFO] [stderr] 11 | |     }
[INFO] [stderr] 12 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]  --> src/traits.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 |     fn constraints(&self) -> Constraints;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/traits.rs:8:5
[INFO] [stderr]    |
[INFO] [stderr] 8  | /     fn verify(&self, proof: &Proof) -> Result<(), VerifierError> {
[INFO] [stderr] 9  | |         let constraints = self.constraints();
[INFO] [stderr] 10 | |         verify(&constraints, proof)
[INFO] [stderr] 11 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/traits.rs:15:1
[INFO] [stderr]    |
[INFO] [stderr] 15 | / pub trait Provable<T>: Verifiable {
[INFO] [stderr] 16 | |     fn trace(&self, witness: T) -> TraceTable;
[INFO] [stderr] 17 | |
[INFO] [stderr] 18 | |     fn prove(&self, witness: T) -> Result<Proof, ProverError> {
[INFO] [stderr] ...  |
[INFO] [stderr] 22 | |     }
[INFO] [stderr] 23 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/traits.rs:16:5
[INFO] [stderr]    |
[INFO] [stderr] 16 |     fn trace(&self, witness: T) -> TraceTable;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/traits.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 18 | /     fn prove(&self, witness: T) -> Result<Proof, ProverError> {
[INFO] [stderr] 19 | |         let constraints = self.constraints();
[INFO] [stderr] 20 | |         let trace = self.trace(witness);
[INFO] [stderr] 21 | |         prove(&constraints, &trace)
[INFO] [stderr] 22 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/verifier.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr] 1   | / use crate::{
[INFO] [stderr] 2   | |     channel::*, constraints::Constraints, polynomial::DensePolynomial, proof_of_work, Proof,
[INFO] [stderr] 3   | | };
[INFO] [stderr] 4   | | #[cfg(feature = "std")]
[INFO] [stderr] ...   |
[INFO] [stderr] 562 | |     }
[INFO] [stderr] 563 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/algebraic_dag.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr] 1   | / use crate::{
[INFO] [stderr] 2   | |     polynomial::DensePolynomial, rational_expression::RationalExpression, trace_table::TraceTable,
[INFO] [stderr] 3   | | };
[INFO] [stderr] 4   | | use std::{cmp::min, ops::Neg, prelude::v1::*};
[INFO] [stderr] ...   |
[INFO] [stderr] 622 | |     }
[INFO] [stderr] 623 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]     --> src/prover.rs:1:1
[INFO] [stderr]      |
[INFO] [stderr] 1    | / use crate::{
[INFO] [stderr] 2    | |     algebraic_dag::AlgebraicGraph,
[INFO] [stderr] 3    | |     channel::{ProverChannel, RandomGenerator, Writable},
[INFO] [stderr] 4    | |     constraints::Constraints,
[INFO] [stderr] ...    |
[INFO] [stderr] 1180 | |     }
[INFO] [stderr] 1181 | | }
[INFO] [stderr]      | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/trace_table.rs:1:1
[INFO] [stderr]     |
[INFO] [stderr] 1   | / use crate::polynomial::DensePolynomial;
[INFO] [stderr] 2   | | use rayon::prelude::*;
[INFO] [stderr] 3   | | use std::{
[INFO] [stderr] 4   | |     ops::{Index, IndexMut},
[INFO] [stderr] ...   |
[INFO] [stderr] 128 | |     }
[INFO] [stderr] 129 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/trace_table.rs:20:1
[INFO] [stderr]    |
[INFO] [stderr] 20 | / impl TraceTable {
[INFO] [stderr] 21 | |     /// Constructs a zero-initialized trace table of the given size.
[INFO] [stderr] 22 | |     pub fn new(trace_length: usize, num_columns: usize) -> Self {
[INFO] [stderr] 23 | |         let mut values: MmapVec<FieldElement> = MmapVec::with_capacity(trace_length * num_columns);
[INFO] [stderr] ...  |
[INFO] [stderr] 90 | |     }
[INFO] [stderr] 91 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/trace_table.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 21 |     /// Constructs a zero-initialized trace table of the given size.
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/trace_table.rs:34:5
[INFO] [stderr]    |
[INFO] [stderr] 34 | /     pub fn num_rows(&self) -> usize {
[INFO] [stderr] 35 | |         self.trace_length
[INFO] [stderr] 36 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/trace_table.rs:38:5
[INFO] [stderr]    |
[INFO] [stderr] 38 | /     pub fn num_columns(&self) -> usize {
[INFO] [stderr] 39 | |         self.num_columns
[INFO] [stderr] 40 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/trace_table.rs:42:5
[INFO] [stderr]    |
[INFO] [stderr] 42 | /     pub fn generator(&self) -> FieldElement {
[INFO] [stderr] 43 | |         FieldElement::root(self.trace_length).expect("No generator for trace table length.")
[INFO] [stderr] 44 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/trace_table.rs:46:5
[INFO] [stderr]    |
[INFO] [stderr] 46 | /     pub fn iter_row(&self, i: usize) -> impl Iterator<Item = &FieldElement> {
[INFO] [stderr] 47 | |         // Delegate to Index<usize> which returns a row slice.
[INFO] [stderr] 48 | |         self[i].iter()
[INFO] [stderr] 49 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/trace_table.rs:51:5
[INFO] [stderr]    |
[INFO] [stderr] 51 | /     pub fn iter_column(&self, j: usize) -> impl Iterator<Item = &FieldElement> {
[INFO] [stderr] 52 | |         self.values[j..].iter().step_by(self.num_columns)
[INFO] [stderr] 53 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/trace_table.rs:55:5
[INFO] [stderr]    |
[INFO] [stderr] 55 | /     /// Extract the j-th column as a vector
[INFO] [stderr] 56 | |     ///
[INFO] [stderr] 57 | |     /// It allocates a potentially large new vector. Where possible, use
[INFO] [stderr] 58 | |     /// the index accessors or the column iterator instead. It is unfortunately
[INFO] [stderr] 59 | |     /// not possible to get a slice of a column (since the representation is
[INFO] [stderr] 60 | |     /// row first.)
[INFO] [stderr]    | |___________________^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/trace_table.rs:70:5
[INFO] [stderr]    |
[INFO] [stderr] 70 | /     pub fn interpolate(&self) -> Vec<DensePolynomial> {
[INFO] [stderr] 71 | |         (0..self.num_columns())
[INFO] [stderr] 72 | |             .into_par_iter()
[INFO] [stderr] 73 | |             // OPT: Use and FFT that can transform the entire table in one pass,
[INFO] [stderr] ...  |
[INFO] [stderr] 89 | |             .collect::<Vec<DensePolynomial>>()
[INFO] [stderr] 90 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:38:1
[INFO] [stderr]    |
[INFO] [stderr] 38 | / impl From<i32> for RationalExpression {
[INFO] [stderr] 39 | |     fn from(value: i32) -> Self {
[INFO] [stderr] 40 | |         Self::Constant(value.into())
[INFO] [stderr] 41 | |     }
[INFO] [stderr] 42 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:39:5
[INFO] [stderr]    |
[INFO] [stderr] 39 | /     fn from(value: i32) -> Self {
[INFO] [stderr] 40 | |         Self::Constant(value.into())
[INFO] [stderr] 41 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:44:1
[INFO] [stderr]    |
[INFO] [stderr] 44 | / impl From<&FieldElement> for RationalExpression {
[INFO] [stderr] 45 | |     fn from(value: &FieldElement) -> Self {
[INFO] [stderr] 46 | |         Self::Constant(value.clone())
[INFO] [stderr] 47 | |     }
[INFO] [stderr] 48 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:45:5
[INFO] [stderr]    |
[INFO] [stderr] 45 | /     fn from(value: &FieldElement) -> Self {
[INFO] [stderr] 46 | |         Self::Constant(value.clone())
[INFO] [stderr] 47 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/verifier.rs:66:1
[INFO] [stderr]    |
[INFO] [stderr] 66 | / impl From<MerkleError> for Error {
[INFO] [stderr] 67 | |     fn from(err: MerkleError) -> Self {
[INFO] [stderr] 68 | |         Self::Merkle(err)
[INFO] [stderr] 69 | |     }
[INFO] [stderr] 70 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/verifier.rs:67:5
[INFO] [stderr]    |
[INFO] [stderr] 67 | /     fn from(err: MerkleError) -> Self {
[INFO] [stderr] 68 | |         Self::Merkle(err)
[INFO] [stderr] 69 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/prover.rs:42:1
[INFO] [stderr]    |
[INFO] [stderr] 42 | / impl From<MerkleError> for Error {
[INFO] [stderr] 43 | |     fn from(err: MerkleError) -> Self {
[INFO] [stderr] 44 | |         Self::MerkleFailed(err)
[INFO] [stderr] 45 | |     }
[INFO] [stderr] 46 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/prover.rs:43:5
[INFO] [stderr]    |
[INFO] [stderr] 43 | /     fn from(err: MerkleError) -> Self {
[INFO] [stderr] 44 | |         Self::MerkleFailed(err)
[INFO] [stderr] 45 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/prover.rs:48:1
[INFO] [stderr]    |
[INFO] [stderr] 48 | / impl From<VerifierError> for Error {
[INFO] [stderr] 49 | |     fn from(err: VerifierError) -> Self {
[INFO] [stderr] 50 | |         Self::VerificationFailed(err)
[INFO] [stderr] 51 | |     }
[INFO] [stderr] 52 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/prover.rs:49:5
[INFO] [stderr]    |
[INFO] [stderr] 49 | /     fn from(err: VerifierError) -> Self {
[INFO] [stderr] 50 | |         Self::VerificationFailed(err)
[INFO] [stderr] 51 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:50:1
[INFO] [stderr]    |
[INFO] [stderr] 50 | / impl Add for RationalExpression {
[INFO] [stderr] 51 | |     type Output = Self;
[INFO] [stderr] 52 | |
[INFO] [stderr] 53 | |     fn add(self, other: Self) -> Self {
[INFO] [stderr] 54 | |         Self::Add(Box::new(self), Box::new(other))
[INFO] [stderr] 55 | |     }
[INFO] [stderr] 56 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:51:5
[INFO] [stderr]    |
[INFO] [stderr] 51 |     type Output = Self;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:53:5
[INFO] [stderr]    |
[INFO] [stderr] 53 | /     fn add(self, other: Self) -> Self {
[INFO] [stderr] 54 | |         Self::Add(Box::new(self), Box::new(other))
[INFO] [stderr] 55 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:60:1
[INFO] [stderr]    |
[INFO] [stderr] 60 | / impl Sub for RationalExpression {
[INFO] [stderr] 61 | |     type Output = Self;
[INFO] [stderr] 62 | |
[INFO] [stderr] 63 | |     fn sub(self, other: Self) -> Self {
[INFO] [stderr] 64 | |         self + other.neg()
[INFO] [stderr] 65 | |     }
[INFO] [stderr] 66 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:61:5
[INFO] [stderr]    |
[INFO] [stderr] 61 |     type Output = Self;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:63:5
[INFO] [stderr]    |
[INFO] [stderr] 63 | /     fn sub(self, other: Self) -> Self {
[INFO] [stderr] 64 | |         self + other.neg()
[INFO] [stderr] 65 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:68:1
[INFO] [stderr]    |
[INFO] [stderr] 68 | / impl Mul for RationalExpression {
[INFO] [stderr] 69 | |     type Output = Self;
[INFO] [stderr] 70 | |
[INFO] [stderr] 71 | |     fn mul(self, other: Self) -> Self {
[INFO] [stderr] 72 | |         Self::Mul(Box::new(self), Box::new(other))
[INFO] [stderr] 73 | |     }
[INFO] [stderr] 74 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:69:5
[INFO] [stderr]    |
[INFO] [stderr] 69 |     type Output = Self;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:71:5
[INFO] [stderr]    |
[INFO] [stderr] 71 | /     fn mul(self, other: Self) -> Self {
[INFO] [stderr] 72 | |         Self::Mul(Box::new(self), Box::new(other))
[INFO] [stderr] 73 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:78:1
[INFO] [stderr]    |
[INFO] [stderr] 78 | / impl Div for RationalExpression {
[INFO] [stderr] 79 | |     type Output = Self;
[INFO] [stderr] 80 | |
[INFO] [stderr] 81 | |     fn div(self, other: Self) -> Self {
[INFO] [stderr] 82 | |         self * other.inv()
[INFO] [stderr] 83 | |     }
[INFO] [stderr] 84 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:79:5
[INFO] [stderr]    |
[INFO] [stderr] 79 |     type Output = Self;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:81:5
[INFO] [stderr]    |
[INFO] [stderr] 81 | /     fn div(self, other: Self) -> Self {
[INFO] [stderr] 82 | |         self * other.inv()
[INFO] [stderr] 83 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/trace_table.rs:93:1
[INFO] [stderr]    |
[INFO] [stderr] 93 | /// Returns a field
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/trace_table.rs:95:5
[INFO] [stderr]    |
[INFO] [stderr] 95 |     type Output = FieldElement;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/trace_table.rs:97:5
[INFO] [stderr]     |
[INFO] [stderr] 97  | /     fn index(&self, (i, j): (usize, usize)) -> &Self::Output {
[INFO] [stderr] 98  | |         assert!(i < self.trace_length);
[INFO] [stderr] 99  | |         assert!(j < self.num_columns);
[INFO] [stderr] 100 | |         &self.values[i * self.num_columns + j]
[INFO] [stderr] 101 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/trace_table.rs:113:1
[INFO] [stderr]     |
[INFO] [stderr] 113 | /// Returns a row as a slice
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/trace_table.rs:115:5
[INFO] [stderr]     |
[INFO] [stderr] 115 |     type Output = [FieldElement];
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/trace_table.rs:117:5
[INFO] [stderr]     |
[INFO] [stderr] 117 | /     fn index(&self, i: usize) -> &[FieldElement] {
[INFO] [stderr] 118 | |         assert!(i < self.trace_length);
[INFO] [stderr] 119 | |         &self.values[i * self.num_columns..(i + 1) * self.num_columns]
[INFO] [stderr] 120 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/trace_table.rs:104:1
[INFO] [stderr]     |
[INFO] [stderr] 104 | /// Returns a mutable field
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/trace_table.rs:106:5
[INFO] [stderr]     |
[INFO] [stderr] 106 | /     fn index_mut(&mut self, (i, j): (usize, usize)) -> &mut Self::Output {
[INFO] [stderr] 107 | |         assert!(i < self.trace_length);
[INFO] [stderr] 108 | |         assert!(j < self.num_columns);
[INFO] [stderr] 109 | |         &mut self.values[i * self.num_columns + j]
[INFO] [stderr] 110 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/trace_table.rs:123:1
[INFO] [stderr]     |
[INFO] [stderr] 123 | /// Returns a mutable row as a slice
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/trace_table.rs:125:5
[INFO] [stderr]     |
[INFO] [stderr] 125 | /     fn index_mut(&mut self, i: usize) -> &mut [FieldElement] {
[INFO] [stderr] 126 | |         assert!(i < self.trace_length);
[INFO] [stderr] 127 | |         &mut self.values[i * self.num_columns..(i + 1) * self.num_columns]
[INFO] [stderr] 128 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/polynomial.rs:16:1
[INFO] [stderr]    |
[INFO] [stderr] 16 | / impl std::fmt::Debug for DensePolynomial {
[INFO] [stderr] 17 | |     fn fmt(&self, fmt: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
[INFO] [stderr] 18 | |         write!(fmt, "DensePolynomial(degree = {:?})", self.degree())
[INFO] [stderr] 19 | |     }
[INFO] [stderr] 20 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/polynomial.rs:17:5
[INFO] [stderr]    |
[INFO] [stderr] 17 | /     fn fmt(&self, fmt: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
[INFO] [stderr] 18 | |         write!(fmt, "DensePolynomial(degree = {:?})", self.degree())
[INFO] [stderr] 19 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/constraints.rs:11:1
[INFO] [stderr]    |
[INFO] [stderr] 11 | / impl fmt::Display for Error {
[INFO] [stderr] 12 | |     fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
[INFO] [stderr] 13 | |         use Error::*;
[INFO] [stderr] 14 | |         match *self {
[INFO] [stderr] ...  |
[INFO] [stderr] 17 | |     }
[INFO] [stderr] 18 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/constraints.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | /     fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
[INFO] [stderr] 13 | |         use Error::*;
[INFO] [stderr] 14 | |         match *self {
[INFO] [stderr] 15 | |             InvalidTraceLength => write!(f, "Invalid trace length (must be power of two)"),
[INFO] [stderr] 16 | |         }
[INFO] [stderr] 17 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/verifier.rs:31:1
[INFO] [stderr]    |
[INFO] [stderr] 31 | / impl fmt::Display for Error {
[INFO] [stderr] 32 | |     fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
[INFO] [stderr] 33 | |         use Error::*;
[INFO] [stderr] 34 | |         match *self {
[INFO] [stderr] ...  |
[INFO] [stderr] 63 | |     }
[INFO] [stderr] 64 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/verifier.rs:32:5
[INFO] [stderr]    |
[INFO] [stderr] 32 | /     fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
[INFO] [stderr] 33 | |         use Error::*;
[INFO] [stderr] 34 | |         match *self {
[INFO] [stderr] 35 | |             RootUnavailable => write!(f, "The prime field doesn't have a root of this order"),
[INFO] [stderr] ...  |
[INFO] [stderr] 62 | |         }
[INFO] [stderr] 63 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/prover.rs:31:1
[INFO] [stderr]    |
[INFO] [stderr] 31 | / impl fmt::Display for Error {
[INFO] [stderr] 32 | |     fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
[INFO] [stderr] 33 | |         use Error::*;
[INFO] [stderr] 34 | |         match *self {
[INFO] [stderr] ...  |
[INFO] [stderr] 39 | |     }
[INFO] [stderr] 40 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/prover.rs:32:5
[INFO] [stderr]    |
[INFO] [stderr] 32 | /     fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
[INFO] [stderr] 33 | |         use Error::*;
[INFO] [stderr] 34 | |         match *self {
[INFO] [stderr] 35 | |             RootUnavailable => write!(f, "The prime field doesn't have a root of this order"),
[INFO] [stderr] ...  |
[INFO] [stderr] 38 | |         }
[INFO] [stderr] 39 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:86:1
[INFO] [stderr]    |
[INFO] [stderr] 86 | / impl Sum<RationalExpression> for RationalExpression {
[INFO] [stderr] 87 | |     fn sum<I>(mut iter: I) -> Self
[INFO] [stderr] 88 | |     where
[INFO] [stderr] 89 | |         I: Iterator<Item = RationalExpression>,
[INFO] [stderr] ...  |
[INFO] [stderr] 96 | |     }
[INFO] [stderr] 97 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]   --> src/rational_expression.rs:87:5
[INFO] [stderr]    |
[INFO] [stderr] 87 | /     fn sum<I>(mut iter: I) -> Self
[INFO] [stderr] 88 | |     where
[INFO] [stderr] 89 | |         I: Iterator<Item = RationalExpression>,
[INFO] [stderr] 90 | |     {
[INFO] [stderr] ...  |
[INFO] [stderr] 95 | |         }
[INFO] [stderr] 96 | |     }
[INFO] [stderr]    | |_____^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/verifier.rs:525:1
[INFO] [stderr]     |
[INFO] [stderr] 525 | / impl error::Error for Error {
[INFO] [stderr] 526 | |     fn source(&self) -> Option<&(dyn error::Error + 'static)> {
[INFO] [stderr] 527 | |         match *self {
[INFO] [stderr] 528 | |             Self::Merkle(ref e) => Some(e),
[INFO] [stderr] ...   |
[INFO] [stderr] 531 | |     }
[INFO] [stderr] 532 | | }
[INFO] [stderr]     | |_^
[INFO] [stderr] 
[INFO] [stderr] warning: Missing code example in this documentation
[INFO] [stderr]    --> src/verifier.rs:526:5
[INFO] [stderr]     |
[INFO] [stderr] 526 | /     fn source(&self) -> Option<&(dyn error::Error + 'static)> {
[INFO] [stderr] 527 | |         match *self {
[INFO] [stderr] 528 | |             Self::Merkle(ref e) => Some(e),
[INFO] [stderr] 529 | |             _ => None,
[INFO] [stderr] 530 | |         }
[INFO] [stderr] 531 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 27.91s
[INFO] running `"docker" "inspect" "f04a1328afdd990f0687ccd1c93168b8a5b0ed577470db56ec81e18b74ca2769"`
[INFO] running `"docker" "rm" "-f" "f04a1328afdd990f0687ccd1c93168b8a5b0ed577470db56ec81e18b74ca2769"`
[INFO] [stdout] f04a1328afdd990f0687ccd1c93168b8a5b0ed577470db56ec81e18b74ca2769