├── .devcontainer ├── .env ├── Dockerfile ├── ci.sh ├── compose-ci.yaml ├── compose-heavy-tests.yaml ├── compose.override.yaml ├── compose.yaml ├── dev.sh ├── devcontainer.json └── install_deps.sh ├── .dockerignore ├── .editorconfig ├── .github ├── FUNDING.yml ├── ISSUE_TEMPLATE │ ├── bug_report.md │ └── feature_request.md ├── dependabot.yml └── workflows │ ├── build_book_code_and_book_on_windows.yml │ ├── build_deploy_book.yml │ ├── build_mdbook_scrub.yml │ ├── build_tools.yml │ ├── clean_cache.yml │ └── deploy_book.yaml ├── .vscode ├── settings.json └── tasks.json ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── TODO.md ├── bin └── README.md ├── bk ├── .env ├── .markdownlint.yaml ├── book.toml ├── crates │ ├── .cargo │ │ └── config.toml │ ├── .config │ │ └── nextest.toml │ ├── Cargo.lock │ ├── Cargo.toml │ ├── README.md │ ├── about │ │ ├── Cargo.toml │ │ ├── LICENSE │ │ ├── README.md │ │ └── tests │ │ │ ├── about.rs │ │ │ ├── about1.rs │ │ │ └── about2.rs │ ├── cats │ │ ├── accessibility │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── screen_readers │ │ │ │ ├── accesskit.rs │ │ │ │ └── main.rs │ │ ├── aerospace │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── aerospace │ │ │ │ ├── aero.rs │ │ │ │ └── main.rs │ │ ├── aerospace_drones │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── drones │ │ │ │ ├── drones1.rs │ │ │ │ └── main.rs │ │ ├── aerospace_protocols │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── aerospace_protocols │ │ │ │ ├── aero_protocols.rs │ │ │ │ └── main.rs │ │ ├── aerospace_simulation │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── aerospace_simulation │ │ │ │ ├── aero_simulation.rs │ │ │ │ └── main.rs │ │ ├── aerospace_space_protocols │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── space_protocols │ │ │ │ ├── main.rs │ │ │ │ └── space_protocols.rs │ │ ├── aerospace_unmanned_aerial_vehicles │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── uavs │ │ │ │ ├── main.rs │ │ │ │ └── uavs.rs │ │ ├── algorithms │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── rand │ │ │ │ ├── fastrand.rs │ │ │ │ ├── main.rs │ │ │ │ ├── rand1.rs │ │ │ │ ├── rand_choose.rs │ │ │ │ ├── rand_custom.rs │ │ │ │ ├── rand_dist.rs │ │ │ │ ├── rand_passwd.rs │ │ │ │ ├── rand_range.rs │ │ │ │ └── rand_range1.rs │ │ │ │ └── sort │ │ │ │ ├── main.rs │ │ │ │ ├── sort1.rs │ │ │ │ ├── sort_float.rs │ │ │ │ └── sort_struct.rs │ │ ├── api_bindings │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── src │ │ │ │ └── lib.rs │ │ ├── asynchronous │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── async │ │ │ │ ├── async1.rs │ │ │ │ ├── async2.rs │ │ │ │ └── main.rs │ │ │ │ ├── async_channels │ │ │ │ ├── async_channel.rs │ │ │ │ ├── async_channels_mpsc.rs │ │ │ │ ├── async_channels_oneshot.rs │ │ │ │ ├── async_channels_oneshot2.rs │ │ │ │ ├── kanal.rs │ │ │ │ ├── main.rs │ │ │ │ └── postage.rs │ │ │ │ ├── async_traits │ │ │ │ ├── async_traits.rs │ │ │ │ ├── async_traits2.rs │ │ │ │ ├── async_traits3.rs │ │ │ │ └── main.rs │ │ │ │ ├── call_async_from_blocking │ │ │ │ ├── call_async_from_blocking_futures_executor.rs │ │ │ │ ├── call_async_from_blocking_tokio_runtime.rs │ │ │ │ └── main.rs │ │ │ │ ├── call_blocking_from_async │ │ │ │ ├── call_blocking_from_async_rayon.rs │ │ │ │ ├── call_blocking_from_async_spawn_blocking.rs │ │ │ │ ├── call_blocking_from_async_spawn_dedicated_thread.rs │ │ │ │ └── main.rs │ │ │ │ ├── futures │ │ │ │ ├── futures1.rs │ │ │ │ ├── futures2.rs │ │ │ │ ├── futures3.rs │ │ │ │ ├── futures_util.rs │ │ │ │ └── main.rs │ │ │ │ ├── streams │ │ │ │ ├── main.rs │ │ │ │ ├── streams.rs │ │ │ │ ├── streams2.rs │ │ │ │ └── streams3.rs │ │ │ │ └── tokio │ │ │ │ ├── main.rs │ │ │ │ ├── tokio2.rs │ │ │ │ ├── tokio21.rs │ │ │ │ └── tokio_graceful_shutdown.rs │ │ ├── authentication │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── basic_authentication │ │ │ │ ├── basic.rs │ │ │ │ └── main.rs │ │ ├── caching │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── in_memory_cache │ │ │ │ ├── cached.rs │ │ │ │ ├── lru.rs │ │ │ │ ├── main.rs │ │ │ │ └── moka.rs │ │ ├── command_line_interface │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── examples │ │ │ │ ├── crossterm.rs │ │ │ │ └── ratatui.rs │ │ │ └── tests │ │ │ │ ├── ansi_term │ │ │ │ ├── ansi_term_basic.rs │ │ │ │ ├── ansi_term_basic1.rs │ │ │ │ ├── ansi_term_basic2.rs │ │ │ │ └── main.rs │ │ │ │ ├── arguments │ │ │ │ ├── clap.rs │ │ │ │ ├── clap_basic.rs │ │ │ │ ├── lexopt.rs │ │ │ │ ├── main.rs │ │ │ │ └── pico_args.rs │ │ │ │ └── user_interaction │ │ │ │ ├── indicatif.rs │ │ │ │ ├── indicatif2.rs │ │ │ │ ├── inquire.rs │ │ │ │ └── main.rs │ │ ├── compilers │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── incremental_computation │ │ │ │ ├── comemo.rs │ │ │ │ ├── main.rs │ │ │ │ └── salsa.rs │ │ ├── compression │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── compression │ │ │ │ ├── async_compression.rs │ │ │ │ ├── flate2.rs │ │ │ │ ├── main.rs │ │ │ │ └── zip.rs │ │ │ │ └── tar │ │ │ │ ├── main.rs │ │ │ │ ├── tar_compress.rs │ │ │ │ ├── tar_decompress.rs │ │ │ │ └── tar_strip_prefix.rs │ │ ├── computer_vision │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── opencv │ │ │ │ ├── main.rs │ │ │ │ └── opencv.rs │ │ ├── concurrency │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── actors │ │ │ │ ├── actix.rs │ │ │ │ ├── actors.rs │ │ │ │ ├── main.rs │ │ │ │ ├── ractor.rs │ │ │ │ └── stakker.rs │ │ │ │ ├── atomics │ │ │ │ ├── atomic_cell.rs │ │ │ │ ├── atomics.rs │ │ │ │ ├── main.rs │ │ │ │ └── spinlock.rs │ │ │ │ ├── await_tree.rs │ │ │ │ ├── concurrent_data_structures │ │ │ │ ├── crossbeam_queue.rs │ │ │ │ ├── dashmap.rs │ │ │ │ ├── flurry.rs │ │ │ │ ├── main.rs │ │ │ │ └── papaya.rs │ │ │ │ ├── crossbeam │ │ │ │ ├── crossbeam_complex.rs │ │ │ │ ├── crossbeam_spawn.rs │ │ │ │ ├── crossbeam_spsc.rs │ │ │ │ └── main.rs │ │ │ │ ├── data_parallelism │ │ │ │ ├── main.rs │ │ │ │ ├── multithreading_rayon.rs │ │ │ │ ├── multithreading_rayon_custom.rs │ │ │ │ ├── multithreading_rayon_parsort.rs │ │ │ │ ├── rayon_any_all.rs │ │ │ │ ├── rayon_iter_mut.rs │ │ │ │ ├── rayon_map_reduce.rs │ │ │ │ ├── rayon_parallel_search.rs │ │ │ │ ├── rayon_parallel_sort.rs │ │ │ │ └── rayon_thumbnails.rs │ │ │ │ ├── explicit_threads │ │ │ │ ├── main.rs │ │ │ │ ├── multithreading_scoped_threads.rs │ │ │ │ └── multithreading_spawn_join.rs │ │ │ │ ├── message_passing │ │ │ │ ├── flume.rs │ │ │ │ ├── main.rs │ │ │ │ ├── message_passing_crossbeam_channel.rs │ │ │ │ ├── message_passing_crossbeam_channel_after_tick.rs │ │ │ │ └── message_passing_mpsc.rs │ │ │ │ ├── send_sync │ │ │ │ ├── main.rs │ │ │ │ ├── send_sync.rs │ │ │ │ └── send_sync_impl.rs │ │ │ │ ├── shared_state │ │ │ │ ├── global_mut_state.rs │ │ │ │ ├── main.rs │ │ │ │ ├── shared_state_mutex.rs │ │ │ │ ├── shared_state_parking_lot.rs │ │ │ │ └── shared_state_parking_lot2.rs │ │ │ │ └── threadpool │ │ │ │ ├── main.rs │ │ │ │ ├── threadpool_fractal.rs │ │ │ │ └── threadpool_walk.rs │ │ ├── config │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── configuration │ │ │ │ ├── config_hierarchical.rs │ │ │ │ ├── config_singleton.rs │ │ │ │ ├── config_testing.rs │ │ │ │ ├── confy.rs │ │ │ │ └── main.rs │ │ │ │ └── env │ │ │ │ ├── dotenvy.rs │ │ │ │ ├── env.rs │ │ │ │ ├── envy.rs │ │ │ │ └── main.rs │ │ ├── cryptography │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── aead │ │ │ │ ├── aes_gcm.rs │ │ │ │ ├── aes_gcm_siv.rs │ │ │ │ ├── chacha20poly1305.rs │ │ │ │ └── main.rs │ │ │ │ ├── certs │ │ │ │ ├── der.rs │ │ │ │ ├── main.rs │ │ │ │ ├── pem_rfc7468.rs │ │ │ │ ├── pkcs8.rs │ │ │ │ └── x509_cert.rs │ │ │ │ ├── hashing │ │ │ │ ├── blake3.rs │ │ │ │ ├── main.rs │ │ │ │ ├── md_5.rs │ │ │ │ ├── sha1.rs │ │ │ │ ├── sha2.rs │ │ │ │ └── sha_digest.rs │ │ │ │ ├── password_hashing │ │ │ │ ├── argon2.rs │ │ │ │ ├── bcrypt.rs │ │ │ │ ├── main.rs │ │ │ │ ├── pbkdf2.rs │ │ │ │ └── scrypt.rs │ │ │ │ ├── rsa.rs │ │ │ │ ├── sign │ │ │ │ ├── dsa.rs │ │ │ │ ├── ecdsa.rs │ │ │ │ ├── ed25519.rs │ │ │ │ ├── ed25519_dalek.rs │ │ │ │ ├── hmac.rs │ │ │ │ └── main.rs │ │ │ │ ├── tls │ │ │ │ ├── main.rs │ │ │ │ ├── native_tls.rs │ │ │ │ └── rustls.rs │ │ │ │ └── utilities │ │ │ │ ├── main.rs │ │ │ │ ├── subtle.rs │ │ │ │ └── zeroize.rs │ │ ├── cryptography_cryptocurrencies │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── cryptocurrencies │ │ │ │ ├── cryptocurrencies.rs │ │ │ │ └── main.rs │ │ ├── data_structures │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── binaryheap │ │ │ │ ├── binaryheap.rs │ │ │ │ ├── main.rs │ │ │ │ └── priority_queue.rs │ │ │ │ ├── bitfield │ │ │ │ ├── bitfield.rs │ │ │ │ ├── bitvec.rs │ │ │ │ ├── flagset.rs │ │ │ │ └── main.rs │ │ │ │ ├── btrees │ │ │ │ ├── btreemap.rs │ │ │ │ ├── btreeset.rs │ │ │ │ └── main.rs │ │ │ │ ├── graph │ │ │ │ ├── main.rs │ │ │ │ └── petgraph.rs │ │ │ │ ├── hashmap │ │ │ │ ├── custom_hash_function.rs │ │ │ │ ├── custom_type_as_key.rs │ │ │ │ ├── hashmap.rs │ │ │ │ ├── hashset.rs │ │ │ │ └── main.rs │ │ │ │ ├── heapless.rs │ │ │ │ ├── linkedlist │ │ │ │ ├── linkedlist.rs │ │ │ │ └── main.rs │ │ │ │ ├── maps │ │ │ │ ├── indexmap.rs │ │ │ │ ├── main.rs │ │ │ │ ├── multimap.rs │ │ │ │ └── slotmap.rs │ │ │ │ ├── stack_and_queue │ │ │ │ ├── main.rs │ │ │ │ ├── queue.rs │ │ │ │ └── stack.rs │ │ │ │ ├── strings │ │ │ │ ├── main.rs │ │ │ │ ├── string_format.rs │ │ │ │ └── strings.rs │ │ │ │ ├── uuid.rs │ │ │ │ └── vec │ │ │ │ ├── arrayvec.rs │ │ │ │ ├── main.rs │ │ │ │ ├── smallvec.rs │ │ │ │ ├── tinyvec.rs │ │ │ │ └── vectors.rs │ │ ├── database │ │ │ ├── .env │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── diesel.toml │ │ │ └── tests │ │ │ │ ├── amqp │ │ │ │ ├── lapin.rs │ │ │ │ └── main.rs │ │ │ │ ├── cassandra │ │ │ │ ├── cassandra_protocol.rs │ │ │ │ ├── cdrs_tokio.rs │ │ │ │ └── main.rs │ │ │ │ ├── connection_pool │ │ │ │ ├── deadpool.rs │ │ │ │ ├── deadpool2.rs │ │ │ │ └── main.rs │ │ │ │ ├── kv │ │ │ │ ├── heed.rs │ │ │ │ ├── main.rs │ │ │ │ └── rocksdb.rs │ │ │ │ ├── mssql │ │ │ │ ├── main.rs │ │ │ │ └── tiberius.rs │ │ │ │ ├── nosql │ │ │ │ ├── main.rs │ │ │ │ ├── mongodb.rs │ │ │ │ └── redis.rs │ │ │ │ ├── oracle │ │ │ │ ├── diesel_oci.rs │ │ │ │ ├── main.rs │ │ │ │ ├── oracle.rs │ │ │ │ └── sibyl.rs │ │ │ │ ├── postgres │ │ │ │ ├── aggregate_data.rs │ │ │ │ ├── cornucopia.rs │ │ │ │ ├── create_tables.rs │ │ │ │ ├── insert_query_data.rs │ │ │ │ ├── main.rs │ │ │ │ └── tokio_postgres.rs │ │ │ │ ├── query_builders_orms │ │ │ │ ├── diesel1.rs │ │ │ │ ├── main.rs │ │ │ │ ├── migrations │ │ │ │ │ ├── .keep │ │ │ │ │ └── 2024-12-29-173417_create_users │ │ │ │ │ │ ├── down.sql │ │ │ │ │ │ └── up.sql │ │ │ │ ├── sea_orm.rs │ │ │ │ └── sqlx.rs │ │ │ │ ├── search │ │ │ │ ├── elasticsearch.rs │ │ │ │ └── main.rs │ │ │ │ └── sqlite │ │ │ │ ├── initialization.rs │ │ │ │ ├── insert_select.rs │ │ │ │ ├── main.rs │ │ │ │ └── transactions.rs │ │ ├── database_implementations │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── databases │ │ │ │ ├── main.rs │ │ │ │ ├── sled.rs │ │ │ │ └── surrealdb.rs │ │ │ │ └── search │ │ │ │ ├── main.rs │ │ │ │ ├── meilisearch.rs │ │ │ │ └── tantivy.rs │ │ ├── date_and_time │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── chrono │ │ │ │ ├── checked.rs │ │ │ │ ├── current.rs │ │ │ │ ├── format.rs │ │ │ │ ├── main.rs │ │ │ │ ├── parse_string_into_datetime.rs │ │ │ │ ├── timestamp.rs │ │ │ │ └── timezone.rs │ │ │ │ ├── duration │ │ │ │ ├── main.rs │ │ │ │ └── profile.rs │ │ │ │ └── time.rs │ │ ├── development_tools │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── NOTES.md │ │ │ ├── README.md │ │ │ ├── src │ │ │ │ ├── kani.rs │ │ │ │ └── lib.rs │ │ │ └── tests │ │ │ │ ├── crate_registries │ │ │ │ ├── crates_io.rs │ │ │ │ └── main.rs │ │ │ │ ├── documentation │ │ │ │ ├── main.rs │ │ │ │ ├── rustdoc.rs │ │ │ │ ├── rustdoc2.rs │ │ │ │ └── rustdoc3.rs │ │ │ │ ├── rustdoc4.rs │ │ │ │ └── semver │ │ │ │ ├── main.rs │ │ │ │ ├── semver_command.rs │ │ │ │ ├── semver_complex.rs │ │ │ │ ├── semver_latest.rs │ │ │ │ ├── semver_parse.rs │ │ │ │ └── semver_prerelease.rs │ │ ├── development_tools_build_utils │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── build.rs │ │ │ └── tests │ │ │ │ ├── autocfg │ │ │ │ ├── autocfg.rs │ │ │ │ └── main.rs │ │ │ │ └── build_time_tooling │ │ │ │ ├── cc_bundled_cpp.rs │ │ │ │ ├── cc_bundled_cpp1.rs │ │ │ │ ├── cc_bundled_static.rs │ │ │ │ ├── cc_bundled_static1.rs │ │ │ │ ├── cc_defines.rs │ │ │ │ ├── cc_defines1.rs │ │ │ │ └── main.rs │ │ ├── development_tools_cargo_plugins │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── src │ │ │ │ └── lib.rs │ │ │ └── tests │ │ │ │ └── building │ │ │ │ ├── main.rs │ │ │ │ └── xshell.rs │ │ ├── development_tools_debugging │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── log │ │ │ │ ├── log_custom.rs │ │ │ │ ├── log_custom_logger.rs │ │ │ │ ├── log_debug.rs │ │ │ │ ├── log_env_variable.rs │ │ │ │ ├── log_error.rs │ │ │ │ ├── log_mod.rs │ │ │ │ ├── log_stdout.rs │ │ │ │ ├── log_syslog.rs │ │ │ │ ├── log_timestamp.rs │ │ │ │ └── main.rs │ │ │ │ ├── other │ │ │ │ ├── main.rs │ │ │ │ ├── open_observe.rs │ │ │ │ ├── open_telemetry.rs │ │ │ │ ├── slog.rs │ │ │ │ └── type_name_of_val.rs │ │ │ │ └── tracing │ │ │ │ ├── main.rs │ │ │ │ ├── tracing.rs │ │ │ │ ├── tracing_instrument.rs │ │ │ │ ├── tracing_span_entered.rs │ │ │ │ ├── tracing_span_in_scope.rs │ │ │ │ ├── tracing_spans.rs │ │ │ │ ├── tracing_subscriber.rs │ │ │ │ ├── tracing_subscriber1.rs │ │ │ │ ├── tracing_subscriber1b.rs │ │ │ │ ├── tracing_subscriber2.rs │ │ │ │ ├── tracing_subscriber2b.rs │ │ │ │ ├── tracing_subscriber3.rs │ │ │ │ ├── tracing_subscriber3b.rs │ │ │ │ └── tracing_subscriber4.rs │ │ ├── development_tools_ffi │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── build.rs │ │ │ └── tests │ │ │ │ ├── c │ │ │ │ ├── bindgen.rs │ │ │ │ ├── cbindgen.rs │ │ │ │ ├── example.c │ │ │ │ ├── example.h │ │ │ │ └── main.rs │ │ │ │ ├── cpp │ │ │ │ ├── cxx.rs │ │ │ │ ├── hello.cc │ │ │ │ ├── hello.h │ │ │ │ └── main.rs │ │ │ │ ├── erlang_elixir │ │ │ │ ├── main.rs │ │ │ │ ├── my_rust_library.ex │ │ │ │ └── rustler.rs │ │ │ │ ├── flutter │ │ │ │ ├── flutter_rust_bridge.rs │ │ │ │ ├── main.dart │ │ │ │ ├── main.rs │ │ │ │ └── pubspec.yaml │ │ │ │ ├── java │ │ │ │ ├── NativeLibrary.java │ │ │ │ ├── jni.rs │ │ │ │ └── main.rs │ │ │ │ ├── lua │ │ │ │ ├── main.rs │ │ │ │ ├── mlua.rs │ │ │ │ ├── mlua2.rs │ │ │ │ └── script.lua │ │ │ │ ├── node │ │ │ │ ├── index.js │ │ │ │ ├── main.rs │ │ │ │ ├── napi.rs │ │ │ │ └── neon.rs │ │ │ │ ├── objc │ │ │ │ ├── main.rs │ │ │ │ └── objc2.rs │ │ │ │ ├── python │ │ │ │ ├── main.rs │ │ │ │ ├── pyo3.rs │ │ │ │ └── use_rust_from_python.rs │ │ │ │ ├── ruby │ │ │ │ ├── magnus.rs │ │ │ │ ├── main.rs │ │ │ │ ├── rutie.rs │ │ │ │ └── script.rb │ │ │ │ └── uniffi.rs │ │ ├── development_tools_procedural_macro_helpers │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── src │ │ │ │ └── lib.rs │ │ │ └── tests │ │ │ │ ├── compile_macros │ │ │ │ ├── main.rs │ │ │ │ └── watt.rs │ │ │ │ └── write_proc_macros │ │ │ │ ├── darling.rs │ │ │ │ ├── main.rs │ │ │ │ ├── paste.rs │ │ │ │ ├── proc_macro2.rs │ │ │ │ ├── quote.rs │ │ │ │ └── syn.rs │ │ ├── development_tools_profiling │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── benches │ │ │ │ └── divan.rs │ │ │ ├── src │ │ │ │ ├── main.rs │ │ │ │ └── memory_usage_analysis │ │ │ │ │ └── dhat.rs │ │ │ └── tests │ │ │ │ └── benchmarking │ │ │ │ ├── criterion.rs │ │ │ │ └── main.rs │ │ ├── development_tools_testing │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── assertions │ │ │ │ ├── approx.rs │ │ │ │ ├── main.rs │ │ │ │ └── tests_custom_message.rs │ │ │ │ ├── code_coverage │ │ │ │ └── main.rs │ │ │ │ ├── fuzzing │ │ │ │ ├── afl.rs │ │ │ │ └── main.rs │ │ │ │ ├── mocking │ │ │ │ ├── faux.rs │ │ │ │ ├── main.rs │ │ │ │ └── mockall.rs │ │ │ │ ├── property_based_testing │ │ │ │ ├── fake.rs │ │ │ │ ├── main.rs │ │ │ │ └── proptest.rs │ │ │ │ ├── test_runners │ │ │ │ ├── main.rs │ │ │ │ └── tests1.rs │ │ │ │ └── testing │ │ │ │ ├── insta.rs │ │ │ │ ├── main.rs │ │ │ │ └── snapshots │ │ │ │ └── testing__insta__format_user_snapshot.snap │ │ ├── email │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── examples │ │ │ │ └── lettre.rs │ │ ├── embedded │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── embassy │ │ │ │ ├── embassy.rs │ │ │ │ └── main.rs │ │ ├── emulators │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── emulators │ │ │ │ ├── emulator.rs │ │ │ │ └── main.rs │ │ ├── encoding │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── build.rs │ │ │ └── tests │ │ │ │ ├── binary_encoders │ │ │ │ ├── bincode.rs │ │ │ │ ├── capnp.rs │ │ │ │ ├── ciborium.rs │ │ │ │ ├── flatbuffers.rs │ │ │ │ ├── foo.capnp │ │ │ │ ├── main.rs │ │ │ │ ├── my_game.fbs │ │ │ │ ├── person.proto │ │ │ │ ├── prost.rs │ │ │ │ ├── protobuf.rs │ │ │ │ └── rmp_serde.rs │ │ │ │ ├── csv │ │ │ │ ├── delimiter.rs │ │ │ │ ├── filter.rs │ │ │ │ ├── invalid.rs │ │ │ │ ├── main.rs │ │ │ │ ├── read.rs │ │ │ │ ├── read1.rs │ │ │ │ ├── serde_serialize.rs │ │ │ │ ├── serialize.rs │ │ │ │ └── transform.rs │ │ │ │ ├── endian_byte.rs │ │ │ │ ├── no_external_schema_file │ │ │ │ ├── main.rs │ │ │ │ ├── postcard.rs │ │ │ │ └── rkyv.rs │ │ │ │ ├── serde │ │ │ │ ├── json.rs │ │ │ │ ├── main.rs │ │ │ │ ├── monostate.rs │ │ │ │ ├── serde.rs │ │ │ │ ├── serde_ignored.rs │ │ │ │ └── serde_json.rs │ │ │ │ ├── string_encoding │ │ │ │ ├── main.rs │ │ │ │ └── percent_encoding.rs │ │ │ │ ├── strings │ │ │ │ ├── base64.rs │ │ │ │ ├── hex.rs │ │ │ │ ├── main.rs │ │ │ │ ├── percent_encode.rs │ │ │ │ └── url_encode.rs │ │ │ │ ├── toml │ │ │ │ ├── main.rs │ │ │ │ ├── toml.rs │ │ │ │ └── toml1.rs │ │ │ │ └── typecasts │ │ │ │ ├── bytemuck.rs │ │ │ │ ├── main.rs │ │ │ │ └── zerocopy.rs │ │ ├── external_ffi_bindings │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── src │ │ │ │ └── lib.rs │ │ ├── filesystem │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── directories │ │ │ │ ├── cwd.rs │ │ │ │ ├── main.rs │ │ │ │ └── remove_dir_all.rs │ │ │ │ ├── directory_traversal │ │ │ │ ├── duplicate_name.rs │ │ │ │ ├── find_file.rs │ │ │ │ ├── globset.rs │ │ │ │ ├── ignore.rs │ │ │ │ ├── ignore_case.rs │ │ │ │ ├── loops.rs │ │ │ │ ├── main.rs │ │ │ │ ├── modified.rs │ │ │ │ ├── png.rs │ │ │ │ ├── sizes.rs │ │ │ │ └── skip_dot.rs │ │ │ │ ├── file_watching │ │ │ │ ├── main.rs │ │ │ │ └── notify.rs │ │ │ │ ├── open.rs │ │ │ │ ├── read_write │ │ │ │ ├── main.rs │ │ │ │ ├── memmap2.rs │ │ │ │ ├── read_file.rs │ │ │ │ └── same_file.rs │ │ │ │ ├── tempfile │ │ │ │ ├── main.rs │ │ │ │ └── tempfile.rs │ │ │ │ └── user_directories │ │ │ │ ├── directories.rs │ │ │ │ ├── dirs.rs │ │ │ │ └── main.rs │ │ ├── finance │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── quant │ │ │ │ ├── main.rs │ │ │ │ └── rustquant.rs │ │ ├── game_development │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── game_development │ │ │ │ ├── game_development1.rs │ │ │ │ ├── glam.rs │ │ │ │ └── main.rs │ │ ├── game_engines │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── game_engines │ │ │ │ ├── bevy.rs │ │ │ │ ├── fyrox.rs │ │ │ │ ├── ggez.rs │ │ │ │ ├── macroquad.rs │ │ │ │ └── main.rs │ │ ├── games │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── src │ │ │ │ └── lib.rs │ │ ├── graphics │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── src │ │ │ │ └── lib.rs │ │ ├── gui │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── assets │ │ │ │ ├── Roboto-Regular.ttf │ │ │ │ ├── Roboto_Condensed-Regular.ttf │ │ │ │ └── Roboto_SemiCondensed-Regular.ttf │ │ │ └── examples │ │ │ │ ├── 2d_renderers │ │ │ │ ├── femtovg.rs │ │ │ │ ├── main.rs │ │ │ │ ├── skia_safe.rs │ │ │ │ ├── vello.rs │ │ │ │ ├── vger.rs │ │ │ │ └── webrender.rs │ │ │ │ ├── clipboard │ │ │ │ ├── arboard.rs │ │ │ │ └── main.rs │ │ │ │ ├── file_dialogs │ │ │ │ ├── main.rs │ │ │ │ └── rfd.rs │ │ │ │ ├── gtk │ │ │ │ ├── gtk4.rs │ │ │ │ ├── main.rs │ │ │ │ └── relm4.rs │ │ │ │ ├── immediate_mode_gui │ │ │ │ ├── egui.rs │ │ │ │ └── main.rs │ │ │ │ ├── retained_mode_gui │ │ │ │ ├── floem.rs │ │ │ │ ├── iced.rs │ │ │ │ ├── main.rs │ │ │ │ ├── slint.rs │ │ │ │ ├── vizia.rs │ │ │ │ └── xilem.rs │ │ │ │ ├── text_layout │ │ │ │ ├── cosmic_text.rs │ │ │ │ ├── main.rs │ │ │ │ └── parley.rs │ │ │ │ ├── ui_layout │ │ │ │ ├── main.rs │ │ │ │ ├── morphorm.rs │ │ │ │ └── taffy.rs │ │ │ │ ├── web │ │ │ │ ├── dioxus.rs │ │ │ │ ├── main.rs │ │ │ │ └── tauri │ │ │ │ │ ├── index.html │ │ │ │ │ └── mod.rs │ │ │ │ └── window_creation │ │ │ │ ├── baseview.rs │ │ │ │ ├── main.rs │ │ │ │ ├── tao.rs │ │ │ │ └── winit.rs │ │ ├── hardware_support │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── processor │ │ │ │ ├── cpu_count.rs │ │ │ │ └── main.rs │ │ ├── internationalization │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── internationalization │ │ │ │ ├── internationalization1.rs │ │ │ │ └── main.rs │ │ ├── localization │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── localization │ │ │ │ ├── localization1.rs │ │ │ │ └── main.rs │ │ ├── mathematics │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── additional_numeric_types │ │ │ │ ├── big_integers.rs │ │ │ │ ├── main.rs │ │ │ │ ├── num_bigint.rs │ │ │ │ ├── num_traits.rs │ │ │ │ ├── ordered_float.rs │ │ │ │ ├── rug.rs │ │ │ │ ├── rust_decimal.rs │ │ │ │ └── typenum.rs │ │ │ │ ├── complex_numbers │ │ │ │ ├── add_complex.rs │ │ │ │ ├── create_complex.rs │ │ │ │ ├── main.rs │ │ │ │ └── mathematical_functions.rs │ │ │ │ ├── linear_algebra │ │ │ │ ├── add_matrices.rs │ │ │ │ ├── deserialize_matrix.rs │ │ │ │ ├── invert_matrix.rs │ │ │ │ ├── main.rs │ │ │ │ ├── multiply_matrices.rs │ │ │ │ ├── multiply_scalar_vector_matrix.rs │ │ │ │ ├── vector_comparison.rs │ │ │ │ └── vector_norm.rs │ │ │ │ ├── stats │ │ │ │ ├── central_tendency.rs │ │ │ │ ├── central_tendency1.rs │ │ │ │ ├── central_tendency2.rs │ │ │ │ ├── main.rs │ │ │ │ └── standard_deviation.rs │ │ │ │ └── trigonometry │ │ │ │ ├── latitude_longitude.rs │ │ │ │ ├── main.rs │ │ │ │ ├── side_length.rs │ │ │ │ └── tan_sin_cos.rs │ │ ├── memory_management │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── jemalloc.rs │ │ │ │ ├── lazy_initialization │ │ │ │ ├── lazy_constant.rs │ │ │ │ ├── lazy_static.rs │ │ │ │ ├── main.rs │ │ │ │ ├── once_cell.rs │ │ │ │ └── once_cell2.rs │ │ │ │ └── mimalloc.rs │ │ ├── multimedia │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── multimedia │ │ │ │ ├── main.rs │ │ │ │ └── multimedia1.rs │ │ ├── multimedia_audio │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── audio │ │ │ │ ├── audio.rs │ │ │ │ └── main.rs │ │ ├── multimedia_encoding │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── encoding │ │ │ │ ├── encoding.rs │ │ │ │ └── main.rs │ │ ├── multimedia_images │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── images │ │ │ │ ├── images.rs │ │ │ │ └── main.rs │ │ ├── multimedia_video │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── video │ │ │ │ ├── main.rs │ │ │ │ └── video.rs │ │ ├── network_programming │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── reverse_proxy │ │ │ │ ├── main.rs │ │ │ │ ├── ngrok.rs │ │ │ │ └── pingora.rs │ │ │ │ └── server │ │ │ │ ├── glommio.rs │ │ │ │ ├── listen_unused.rs │ │ │ │ └── main.rs │ │ ├── no_std │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── no_std │ │ │ │ ├── main.rs │ │ │ │ └── no_std1.rs │ │ ├── no_std_no_alloc │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── no_alloc │ │ │ │ ├── main.rs │ │ │ │ └── no_alloc.rs │ │ ├── os │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── external_commands │ │ │ │ ├── continuous.rs │ │ │ │ ├── error_file.rs │ │ │ │ ├── main.rs │ │ │ │ ├── piped.rs │ │ │ │ ├── process_output.rs │ │ │ │ ├── read_env_variable.rs │ │ │ │ ├── send_input.rs │ │ │ │ └── which.rs │ │ │ │ └── low_level_system_calls │ │ │ │ ├── libc.rs │ │ │ │ └── main.rs │ │ ├── os_freebsd_apis │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── freebsd │ │ │ │ ├── freebsd.rs │ │ │ │ └── main.rs │ │ ├── os_linux_apis │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── linux │ │ │ │ ├── linux.rs │ │ │ │ └── main.rs │ │ ├── os_macos_apis │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── macos │ │ │ │ ├── macos.rs │ │ │ │ └── main.rs │ │ ├── os_unix_apis │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── unix │ │ │ │ ├── main.rs │ │ │ │ ├── nix.rs │ │ │ │ └── rustix.rs │ │ ├── os_windows_apis │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── windows │ │ │ │ ├── main.rs │ │ │ │ ├── winapi.rs │ │ │ │ └── windows.rs │ │ ├── parser_implementations │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── html │ │ │ │ ├── cssparser.rs │ │ │ │ ├── html5ever.rs │ │ │ │ ├── main.rs │ │ │ │ └── tl.rs │ │ │ │ ├── ini │ │ │ │ ├── main.rs │ │ │ │ └── rust_ini.rs │ │ │ │ ├── javascript │ │ │ │ ├── main.rs │ │ │ │ └── swc_ecma_parser.rs │ │ │ │ ├── json │ │ │ │ ├── json5.rs │ │ │ │ ├── main.rs │ │ │ │ ├── serde_json.rs │ │ │ │ └── simd_json.rs │ │ │ │ ├── markdown │ │ │ │ ├── comrak.rs │ │ │ │ ├── main.rs │ │ │ │ ├── markdown.rs │ │ │ │ └── pulldown_cmark.rs │ │ │ │ ├── programming_languages │ │ │ │ ├── main.rs │ │ │ │ └── sqlparser.rs │ │ │ │ ├── toml │ │ │ │ ├── basic_toml.rs │ │ │ │ ├── main.rs │ │ │ │ ├── toml.rs │ │ │ │ └── toml_edit.rs │ │ │ │ ├── xml │ │ │ │ ├── main.rs │ │ │ │ ├── quick_xml.rs │ │ │ │ ├── roxmltree.rs │ │ │ │ ├── xml.rs │ │ │ │ ├── xml5ever.rs │ │ │ │ └── xmlparser.rs │ │ │ │ └── yaml │ │ │ │ ├── main.rs │ │ │ │ └── serde_yml.rs │ │ ├── parsing │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── parsing │ │ │ │ ├── main.rs │ │ │ │ ├── nom.rs │ │ │ │ └── tree_sitter.rs │ │ │ │ └── pest │ │ │ │ ├── grammar.pest │ │ │ │ ├── main.rs │ │ │ │ └── pest.rs │ │ ├── rendering │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── 2d_raster_graphics │ │ │ │ ├── main.rs │ │ │ │ └── render.rs │ │ │ │ ├── 2d_vector_graphics │ │ │ │ └── main.rs │ │ │ │ ├── 3d_renderers │ │ │ │ └── main.rs │ │ │ │ ├── svg_rendering │ │ │ │ └── main.rs │ │ │ │ └── text_rendering │ │ │ │ └── main.rs │ │ ├── rendering_data_formats │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── data_formats │ │ │ │ ├── data_formats.rs │ │ │ │ └── main.rs │ │ ├── rendering_engine │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── rendering_engines │ │ │ │ ├── main.rs │ │ │ │ └── render.rs │ │ ├── rendering_graphics_api │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── gpu_abstraction_layers │ │ │ │ ├── main.rs │ │ │ │ └── wgpu.rs │ │ │ │ ├── native_graphics_apis │ │ │ │ ├── graphics.rs │ │ │ │ └── main.rs │ │ │ │ ├── opengl │ │ │ │ └── main.rs │ │ │ │ ├── shaders │ │ │ │ └── main.rs │ │ │ │ └── vulkan │ │ │ │ └── main.rs │ │ ├── rust_patterns │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── builder_pattern │ │ │ │ ├── builder_pattern.rs │ │ │ │ └── main.rs │ │ │ │ ├── creational_patterns │ │ │ │ ├── abstract_factory.rs │ │ │ │ ├── factory.rs │ │ │ │ ├── main.rs │ │ │ │ └── singleton.rs │ │ │ │ ├── error │ │ │ │ ├── anyhow.rs │ │ │ │ ├── backtrace.rs │ │ │ │ ├── color_eyre.rs │ │ │ │ ├── error_handling.rs │ │ │ │ ├── main.rs │ │ │ │ ├── miette.rs │ │ │ │ ├── panic.rs │ │ │ │ ├── question_mark.rs │ │ │ │ ├── question_mark2.rs │ │ │ │ ├── retain.rs │ │ │ │ ├── thiserror.rs │ │ │ │ ├── thiserror2.rs │ │ │ │ ├── unwrap.rs │ │ │ │ └── unwrap_or_else.rs │ │ │ │ ├── functional_programming │ │ │ │ ├── either.rs │ │ │ │ ├── frunk.rs │ │ │ │ ├── im.rs │ │ │ │ ├── itertools.rs │ │ │ │ ├── main.rs │ │ │ │ └── rpds.rs │ │ │ │ ├── rust_specific_patterns │ │ │ │ ├── dyn_clone.rs │ │ │ │ ├── main.rs │ │ │ │ └── pin_project.rs │ │ │ │ └── scopeguard.rs │ │ ├── science │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── ml │ │ │ │ ├── candle.rs │ │ │ │ ├── linfa.rs │ │ │ │ ├── main.rs │ │ │ │ └── smartcore.rs │ │ ├── science_geo │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── geo │ │ │ │ ├── geo.rs │ │ │ │ └── main.rs │ │ ├── science_neuroscience │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── neuroscience │ │ │ │ ├── main.rs │ │ │ │ └── neuro.rs │ │ ├── science_robotics │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── artificial_intelligence │ │ │ │ ├── bonsai_bt.rs │ │ │ │ └── main.rs │ │ │ │ ├── control_systems │ │ │ │ └── main.rs │ │ │ │ ├── hardware_integration │ │ │ │ └── main.rs │ │ │ │ ├── perception_and_sensors │ │ │ │ └── main.rs │ │ │ │ ├── robot_operating_systems │ │ │ │ ├── main.rs │ │ │ │ └── robotics.rs │ │ │ │ ├── robotics_frameworks │ │ │ │ ├── main.rs │ │ │ │ ├── openrr.rs │ │ │ │ └── zenoh.rs │ │ │ │ └── simulation_visualization │ │ │ │ └── main.rs │ │ ├── simulation │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── physics_engines │ │ │ │ └── main.rs │ │ │ │ └── simulation │ │ │ │ ├── main.rs │ │ │ │ └── simulation1.rs │ │ ├── template_engine │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── tera │ │ │ │ ├── main.rs │ │ │ │ ├── templates │ │ │ │ │ └── index.html │ │ │ │ └── tera.rs │ │ │ │ └── tinytemplate │ │ │ │ ├── main.rs │ │ │ │ └── tinytemplate.rs │ │ ├── text_processing │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── diffing │ │ │ │ ├── diff.rs │ │ │ │ ├── main.rs │ │ │ │ └── similar.rs │ │ │ │ ├── other_strings │ │ │ │ ├── bstr.rs │ │ │ │ ├── cstring.rs │ │ │ │ ├── main.rs │ │ │ │ ├── osstring.rs │ │ │ │ └── ustr.rs │ │ │ │ ├── regex │ │ │ │ ├── email.rs │ │ │ │ ├── fancy_regex.rs │ │ │ │ ├── filter_log.rs │ │ │ │ ├── hashtags.rs │ │ │ │ ├── main.rs │ │ │ │ ├── phone.rs │ │ │ │ ├── regex.rs │ │ │ │ └── replace.rs │ │ │ │ ├── string_concat │ │ │ │ ├── main.rs │ │ │ │ ├── string_concat.rs │ │ │ │ └── string_concat2.rs │ │ │ │ ├── string_manipulation │ │ │ │ ├── heck.rs │ │ │ │ ├── indoc.rs │ │ │ │ ├── main.rs │ │ │ │ └── textwrap.rs │ │ │ │ ├── string_parsing │ │ │ │ ├── from_str.rs │ │ │ │ └── main.rs │ │ │ │ ├── string_search │ │ │ │ ├── aho_corasick.rs │ │ │ │ ├── fuzzy_matcher.rs │ │ │ │ ├── main.rs │ │ │ │ ├── memchr.rs │ │ │ │ └── strsim.rs │ │ │ │ └── unicode │ │ │ │ ├── graphemes.rs │ │ │ │ └── main.rs │ │ ├── value_formatting │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── number_formatting │ │ │ │ ├── main.rs │ │ │ │ └── ryu.rs │ │ ├── virtualization │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── virtualization │ │ │ │ ├── main.rs │ │ │ │ └── virtualization1.rs │ │ ├── visualization │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ └── visualization │ │ │ │ ├── main.rs │ │ │ │ └── plotly.rs │ │ ├── wasm │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── interfacing_with_javascript │ │ │ │ └── main.rs │ │ │ │ ├── wasm_development │ │ │ │ └── main.rs │ │ │ │ ├── wasm_standalone_runtimes │ │ │ │ ├── main.rs │ │ │ │ ├── wasmer.rs │ │ │ │ └── wasmtime.rs │ │ │ │ └── yew │ │ │ │ ├── main.rs │ │ │ │ └── yew.rs │ │ ├── web_programming │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── http_types_and_interfaces │ │ │ │ ├── http.rs │ │ │ │ └── main.rs │ │ │ │ ├── mime │ │ │ │ ├── filename.rs │ │ │ │ ├── main.rs │ │ │ │ ├── request.rs │ │ │ │ └── string.rs │ │ │ │ ├── scraping │ │ │ │ ├── broken.rs │ │ │ │ ├── extract_links.rs │ │ │ │ ├── main.rs │ │ │ │ └── unique.rs │ │ │ │ └── url │ │ │ │ ├── base.rs │ │ │ │ ├── fragment.rs │ │ │ │ ├── main.rs │ │ │ │ ├── new.rs │ │ │ │ ├── origin.rs │ │ │ │ ├── origin1.rs │ │ │ │ └── parse.rs │ │ ├── web_programming_http_client │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ │ ├── apis │ │ │ │ ├── main.rs │ │ │ │ ├── paginated.rs │ │ │ │ ├── rate_limited.rs │ │ │ │ ├── rest_get.rs │ │ │ │ ├── rest_head.rs │ │ │ │ └── rest_post.rs │ │ │ │ ├── download │ │ │ │ ├── download.rs │ │ │ │ ├── main.rs │ │ │ │ ├── partial.rs │ │ │ │ └── post_file.rs │ │ │ │ ├── http_clients │ │ │ │ ├── hyper.rs │ │ │ │ ├── main.rs │ │ │ │ └── ureq.rs │ │ │ │ └── requests │ │ │ │ ├── get.rs │ │ │ │ ├── get1.rs │ │ │ │ ├── header.rs │ │ │ │ └── main.rs │ │ ├── web_programming_http_server │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── build.rs │ │ │ ├── examples │ │ │ │ └── loco │ │ │ │ │ ├── config │ │ │ │ │ └── app.yaml │ │ │ │ │ ├── main.rs │ │ │ │ │ └── migrations │ │ │ │ │ └── 20231027120000_create_users │ │ │ │ │ ├── down.sql │ │ │ │ │ └── up.sql │ │ │ ├── proto │ │ │ │ └── helloworld.proto │ │ │ └── tests │ │ │ │ ├── actix_web.rs │ │ │ │ ├── async_graphql.rs │ │ │ │ ├── axum.rs │ │ │ │ ├── grpc │ │ │ │ ├── main.rs │ │ │ │ └── tonic.rs │ │ │ │ ├── hyper_server.rs │ │ │ │ ├── leptos.rs │ │ │ │ ├── middleware │ │ │ │ ├── cors.rs │ │ │ │ ├── main.rs │ │ │ │ └── tower_http.rs │ │ │ │ └── rocket.rs │ │ └── web_programming_websocket │ │ │ ├── Cargo.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── tests │ │ │ ├── async_tungstenite.rs │ │ │ ├── tokio_tungstenite.rs │ │ │ └── tungstenite.rs │ ├── code_organization │ │ ├── Cargo.toml │ │ ├── LICENSE │ │ ├── README.md │ │ └── tests │ │ │ ├── modules │ │ │ ├── main.rs │ │ │ └── module_visibility.rs │ │ │ ├── use │ │ │ ├── main.rs │ │ │ ├── pub_use.rs │ │ │ ├── use1.rs │ │ │ ├── use2.rs │ │ │ ├── use3.rs │ │ │ ├── use_external_crate.rs │ │ │ └── use_shortcuts.rs │ │ │ └── visibility │ │ │ ├── main.rs │ │ │ ├── private_access.rs │ │ │ ├── pub_keyword.rs │ │ │ ├── public_access.rs │ │ │ ├── public_by_default.rs │ │ │ ├── visibility_external_code.rs │ │ │ ├── visibility_pub_crate.rs │ │ │ └── visibility_scope.rs │ ├── language │ │ ├── Cargo.toml │ │ ├── LICENSE │ │ ├── README.md │ │ └── tests │ │ │ ├── attributes │ │ │ ├── allow_dead_code.rs │ │ │ ├── attributes_deprecated.rs │ │ │ ├── attributes_derive.rs │ │ │ ├── attributes_early_development.rs │ │ │ ├── attributes_must_use.rs │ │ │ ├── attributes_production.rs │ │ │ ├── cfg_if.rs │ │ │ ├── conditional_compilation.rs │ │ │ └── main.rs │ │ │ ├── closures │ │ │ ├── closures.rs │ │ │ ├── closures_as_input_parameters.rs │ │ │ ├── closures_capture.rs │ │ │ ├── closures_move.rs │ │ │ ├── closures_with_type_annotations.rs │ │ │ └── main.rs │ │ │ ├── constants_and_statics │ │ │ ├── constants.rs │ │ │ ├── main.rs │ │ │ ├── static_mut.rs │ │ │ └── statics.rs │ │ │ ├── control_flow │ │ │ ├── for1.rs │ │ │ ├── if_else.rs │ │ │ ├── labeled_block_expression.rs │ │ │ ├── loop1.rs │ │ │ ├── main.rs │ │ │ └── while1.rs │ │ │ ├── data_types │ │ │ ├── compound_data_types.rs │ │ │ ├── main.rs │ │ │ ├── scalar_data_types.rs │ │ │ └── string_data_types.rs │ │ │ ├── entrypoint │ │ │ ├── async_main.rs │ │ │ ├── main.rs │ │ │ ├── main_fn.rs │ │ │ └── main_fn_with_result.rs │ │ │ ├── enums │ │ │ ├── enums.rs │ │ │ ├── main.rs │ │ │ └── strum.rs │ │ │ ├── functions │ │ │ ├── diverging_functions.rs │ │ │ ├── function_pointers.rs │ │ │ ├── functions.rs │ │ │ ├── generic_functions.rs │ │ │ ├── generic_functions2.rs │ │ │ ├── main.rs │ │ │ └── return_reference.rs │ │ │ ├── generics │ │ │ ├── generic_function.rs │ │ │ ├── generic_lifetime.rs │ │ │ ├── generic_structs.rs │ │ │ ├── generics.rs │ │ │ └── main.rs │ │ │ ├── iterators │ │ │ ├── consume_intoiterator.rs │ │ │ ├── implement_intoiterator.rs │ │ │ ├── iterator_adapters.rs │ │ │ ├── iterators.rs │ │ │ ├── main.rs │ │ │ ├── return_iterator.rs │ │ │ └── simple_iterators.rs │ │ │ ├── lifetimes │ │ │ ├── lifetime_parameter_function.rs │ │ │ ├── lifetime_parameter_struct.rs │ │ │ ├── lifetime_parameters.rs │ │ │ ├── main.rs │ │ │ ├── self_referential_struct.rs │ │ │ └── static_lifetime.rs │ │ │ ├── macros │ │ │ ├── macros.rs │ │ │ └── main.rs │ │ │ ├── match │ │ │ ├── if_let.rs │ │ │ ├── main.rs │ │ │ ├── match1.rs │ │ │ ├── match2.rs │ │ │ └── while_let.rs │ │ │ ├── ownership_borrowing │ │ │ ├── borrowing_function.rs │ │ │ ├── borrowing_function_mutable.rs │ │ │ ├── borrowing_immutable.rs │ │ │ ├── clone.rs │ │ │ ├── copy.rs │ │ │ ├── main.rs │ │ │ ├── move1.rs │ │ │ ├── move_function.rs │ │ │ ├── read_write_lock.rs │ │ │ └── scope.rs │ │ │ ├── slices │ │ │ ├── main.rs │ │ │ ├── slice_as_argument.rs │ │ │ ├── slices.rs │ │ │ └── string_slices.rs │ │ │ ├── structs │ │ │ ├── common_traits.rs │ │ │ ├── main.rs │ │ │ ├── struct_constant.rs │ │ │ ├── struct_fields.rs │ │ │ ├── struct_impl.rs │ │ │ ├── struct_init.rs │ │ │ ├── struct_trait.rs │ │ │ ├── struct_update.rs │ │ │ ├── structs.rs │ │ │ └── tuple_structs.rs │ │ │ ├── trait_objects │ │ │ ├── dyn_compat.rs │ │ │ ├── dyn_supertraits.rs │ │ │ ├── impl_trait.rs │ │ │ ├── main.rs │ │ │ └── trait_objects.rs │ │ │ ├── traits │ │ │ ├── associated_types.rs │ │ │ ├── blanket_implementations.rs │ │ │ ├── const_in_traits.rs │ │ │ ├── extend_external_type.rs │ │ │ ├── generic_traits.rs │ │ │ ├── main.rs │ │ │ ├── multiple_traits.rs │ │ │ ├── newtype.rs │ │ │ ├── rpit.rs │ │ │ ├── sealed_trait_pattern.rs │ │ │ ├── supertraits.rs │ │ │ ├── trait_bounds.rs │ │ │ ├── trait_default_implementation.rs │ │ │ ├── traits.rs │ │ │ └── traits_as_parameters.rs │ │ │ └── variables │ │ │ ├── destructuring.rs │ │ │ ├── main.rs │ │ │ ├── shadowing.rs │ │ │ ├── vars.rs │ │ │ └── vars2.rs │ ├── other │ │ ├── Cargo.toml │ │ ├── LICENSE │ │ ├── README.md │ │ └── tests │ │ │ ├── architecture │ │ │ ├── cqrs.rs │ │ │ ├── di.rs │ │ │ ├── layered_architecture.rs │ │ │ ├── main.rs │ │ │ ├── repository.rs │ │ │ └── state_machine.rs │ │ │ ├── cloud │ │ │ ├── aws_lambda.rs │ │ │ ├── aws_sdk.rs │ │ │ ├── mod.rs │ │ │ ├── shuttle.rs │ │ │ └── template.yaml │ │ │ ├── cross_platform │ │ │ ├── crux.rs │ │ │ └── mod.rs │ │ │ ├── data_processing │ │ │ ├── arrow.rs │ │ │ ├── datafusion.rs │ │ │ ├── mod.rs │ │ │ └── polars.rs │ │ │ ├── gpu │ │ │ ├── mod.rs │ │ │ └── rust_gpu.rs │ │ │ ├── scripting │ │ │ ├── mod.rs │ │ │ └── rhai.rs │ │ │ ├── topic.rs │ │ │ └── written_in_rust │ │ │ └── mod.rs │ ├── rustfmt.toml │ └── standard_library │ │ ├── Cargo.toml │ │ ├── LICENSE │ │ ├── README.md │ │ └── tests │ │ ├── NOTES.md │ │ ├── arc │ │ ├── arc_make_mut.rs │ │ └── main.rs │ │ ├── asref │ │ ├── asref.rs │ │ ├── main.rs │ │ ├── option_asref.rs │ │ └── smart_pointer_asref.rs │ │ ├── box │ │ ├── box_basics.rs │ │ ├── box_deref.rs │ │ ├── box_dst.rs │ │ ├── box_recursive.rs │ │ ├── box_trait_objects.rs │ │ └── main.rs │ │ ├── cow │ │ ├── cow_alternatives.rs │ │ ├── cow_as_function_param.rs │ │ ├── cow_to_borrowed_owned.rs │ │ ├── function_returning_cow.rs │ │ ├── into_cow.rs │ │ ├── main.rs │ │ └── modify_cow_in_place.rs │ │ ├── derive │ │ ├── derive.rs │ │ ├── derive_more.rs │ │ └── main.rs │ │ ├── option │ │ ├── main.rs │ │ ├── option_combinators.rs │ │ ├── option_match.rs │ │ ├── option_question_mark.rs │ │ ├── option_ref.rs │ │ ├── option_unwrap.rs │ │ ├── options1.rs │ │ └── options2.rs │ │ ├── result │ │ ├── main.rs │ │ ├── result.rs │ │ ├── result2.rs │ │ └── result3.rs │ │ └── smart_pointers │ │ ├── cell.rs │ │ ├── main.rs │ │ ├── rc.rs │ │ └── refcell.rs ├── drafts │ ├── FRAGMENTS.md │ ├── SUMMARY.md │ ├── TOREVIEW.md │ ├── categories │ │ ├── algorithms │ │ │ ├── index.md │ │ │ ├── randomness.incl.md │ │ │ ├── randomness.md │ │ │ ├── refs.incl.md │ │ │ ├── sorting.incl.md │ │ │ └── sorting.md │ │ ├── asynchronous │ │ │ ├── async.incl.md │ │ │ ├── async.md │ │ │ ├── async_and_blocking.incl.md │ │ │ ├── async_and_blocking.md │ │ │ ├── async_channels.incl.md │ │ │ ├── async_channels.md │ │ │ ├── async_traits.incl.md │ │ │ ├── async_traits.md │ │ │ ├── async_utilities.incl.md │ │ │ ├── async_utilities.md │ │ │ ├── futures.incl.md │ │ │ ├── futures.md │ │ │ ├── index.md │ │ │ ├── refs.incl.md │ │ │ ├── streams.incl.md │ │ │ ├── streams.md │ │ │ ├── tokio.incl.md │ │ │ └── tokio.md │ │ ├── authentication │ │ │ ├── basic_authentication.incl.md │ │ │ ├── basic_authentication.md │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── caching │ │ │ ├── in_memory_cache.incl.md │ │ │ ├── in_memory_cache.md │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── command-line-interface │ │ │ ├── ansi_terminal.incl.md │ │ │ ├── ansi_terminal.md │ │ │ ├── argument_parsing.incl.md │ │ │ ├── argument_parsing.md │ │ │ ├── index.md │ │ │ ├── refs.incl.md │ │ │ ├── tui.incl.md │ │ │ ├── tui.md │ │ │ ├── user_interaction.incl.md │ │ │ └── user_interaction.md │ │ ├── command-line-utilities │ │ │ ├── filesystem_cli.incl.md │ │ │ ├── filesystem_cli.md │ │ │ ├── index.md │ │ │ ├── networking_cli.incl.md │ │ │ ├── networking_cli.md │ │ │ ├── refs.incl.md │ │ │ ├── shells.incl.md │ │ │ └── shells.md │ │ ├── compression │ │ │ ├── compression.incl.md │ │ │ ├── compression.md │ │ │ ├── index.md │ │ │ ├── refs.incl.md │ │ │ ├── tar.incl.md │ │ │ └── tar.md │ │ ├── concurrency │ │ │ ├── _actors.incl.md │ │ │ ├── _actors.md │ │ │ ├── atomics.incl.md │ │ │ ├── atomics.md │ │ │ ├── concurrent_data_structures.incl.md │ │ │ ├── concurrent_data_structures.md │ │ │ ├── crossbeam.incl.md │ │ │ ├── crossbeam.md │ │ │ ├── data_parallelism.incl.md │ │ │ ├── data_parallelism.md │ │ │ ├── explicit_threads.incl.md │ │ │ ├── explicit_threads.md │ │ │ ├── index.md │ │ │ ├── message_passing.incl.md │ │ │ ├── message_passing.md │ │ │ ├── refs.incl.md │ │ │ ├── send_sync.incl.md │ │ │ ├── send_sync.md │ │ │ ├── shared_state.incl.md │ │ │ ├── shared_state.md │ │ │ ├── threadpool.incl.md │ │ │ └── threadpool.md │ │ ├── config │ │ │ ├── configuration.incl.md │ │ │ ├── configuration.md │ │ │ ├── environment_variables.incl.md │ │ │ ├── environment_variables.md │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── cryptography │ │ │ ├── aead.incl.md │ │ │ ├── aead.md │ │ │ ├── certificates.incl.md │ │ │ ├── certificates.md │ │ │ ├── cryptography_utilities.incl.md │ │ │ ├── cryptography_utilities.md │ │ │ ├── encryption.incl.md │ │ │ ├── encryption.md │ │ │ ├── hashing.incl.md │ │ │ ├── hashing.md │ │ │ ├── hmac.incl.md │ │ │ ├── hmac.md │ │ │ ├── index.md │ │ │ ├── password_hashing.incl.md │ │ │ ├── password_hashing.md │ │ │ ├── refs.incl.md │ │ │ ├── signature.incl.md │ │ │ ├── signature.md │ │ │ ├── tls.incl.md │ │ │ └── tls.md │ │ ├── data-structures │ │ │ ├── binaryheap.incl.md │ │ │ ├── binaryheap.md │ │ │ ├── bitfield.incl.md │ │ │ ├── bitfield.md │ │ │ ├── btrees.incl.md │ │ │ ├── btrees.md │ │ │ ├── graph.incl.md │ │ │ ├── graph.md │ │ │ ├── hashmap.incl.md │ │ │ ├── hashmap.md │ │ │ ├── heapless.incl.md │ │ │ ├── heapless.md │ │ │ ├── index.md │ │ │ ├── linkedlist.incl.md │ │ │ ├── linkedlist.md │ │ │ ├── maps.incl.md │ │ │ ├── maps.md │ │ │ ├── refs.incl.md │ │ │ ├── stack_allocated_arrays.incl.md │ │ │ ├── stack_allocated_arrays.md │ │ │ ├── stack_and_queue.incl.md │ │ │ ├── stack_and_queue.md │ │ │ ├── strings.incl.md │ │ │ ├── strings.md │ │ │ ├── uuid.incl.md │ │ │ ├── uuid.md │ │ │ ├── vector.incl.md │ │ │ └── vector.md │ │ ├── database-implementations │ │ │ ├── databases.incl.md │ │ │ ├── databases.md │ │ │ ├── index.md │ │ │ ├── refs.incl.md │ │ │ ├── rust_search_engines.incl.md │ │ │ └── rust_search_engines.md │ │ ├── database │ │ │ ├── amqp.incl.md │ │ │ ├── amqp.md │ │ │ ├── connection_pool.incl.md │ │ │ ├── connection_pool.md │ │ │ ├── index.md │ │ │ ├── key_value_stores.incl.md │ │ │ ├── key_value_stores.md │ │ │ ├── mssql.incl.md │ │ │ ├── mssql.md │ │ │ ├── nosql.incl.md │ │ │ ├── nosql.md │ │ │ ├── oracle.incl.md │ │ │ ├── oracle.md │ │ │ ├── postgres.incl.md │ │ │ ├── postgres.md │ │ │ ├── query_builders_orms.incl.md │ │ │ ├── query_builders_orms.md │ │ │ ├── refs.incl.md │ │ │ ├── search.incl.md │ │ │ ├── search.md │ │ │ ├── sqlite.incl.md │ │ │ └── sqlite.md │ │ ├── date-and-time │ │ │ ├── duration.incl.md │ │ │ ├── duration.md │ │ │ ├── index.md │ │ │ ├── parse.incl.md │ │ │ ├── parse.md │ │ │ ├── refs.incl.md │ │ │ ├── time_crate.incl.md │ │ │ └── time_crate.md │ │ ├── development-tools │ │ │ ├── cargo │ │ │ │ ├── cargo.incl.md │ │ │ │ ├── cargo.md │ │ │ │ ├── crate_registries.incl.md │ │ │ │ ├── crate_registries.md │ │ │ │ ├── package_layout.incl.md │ │ │ │ ├── package_layout.md │ │ │ │ └── refs.incl.md │ │ │ ├── compilation │ │ │ │ ├── faster_linking.incl.md │ │ │ │ ├── faster_linking.md │ │ │ │ ├── reduce_compilation_duration.incl.md │ │ │ │ ├── reduce_compilation_duration.md │ │ │ │ └── refs.incl.md │ │ │ ├── cross-compilation │ │ │ │ ├── cross_compilation.incl.md │ │ │ │ ├── cross_compilation.md │ │ │ │ └── refs.incl.md │ │ │ ├── documentation │ │ │ │ ├── badges.incl.md │ │ │ │ ├── badges.md │ │ │ │ ├── documentation.incl.md │ │ │ │ ├── documentation.md │ │ │ │ ├── mdbook.incl.md │ │ │ │ ├── mdbook.md │ │ │ │ └── refs.incl.md │ │ │ ├── formatting │ │ │ │ ├── formatting.incl.md │ │ │ │ ├── formatting.md │ │ │ │ └── refs.incl.md │ │ │ ├── index.md │ │ │ ├── installation │ │ │ │ ├── install.incl.md │ │ │ │ ├── install.md │ │ │ │ ├── refs.incl.md │ │ │ │ ├── rustup.incl.md │ │ │ │ └── rustup.md │ │ │ ├── other │ │ │ │ ├── code_build.incl.md │ │ │ │ ├── code_build.md │ │ │ │ ├── code_verification.incl.md │ │ │ │ ├── code_verification.md │ │ │ │ ├── miri.incl.md │ │ │ │ ├── miri.md │ │ │ │ ├── other.incl.md │ │ │ │ ├── other.md │ │ │ │ └── refs.incl.md │ │ │ ├── refs.incl.md │ │ │ ├── transcompilation │ │ │ │ ├── refs.incl.md │ │ │ │ ├── transpilers.incl.md │ │ │ │ └── transpilers.md │ │ │ └── versioning │ │ │ │ ├── refs.incl.md │ │ │ │ ├── versioning.incl.md │ │ │ │ └── versioning.md │ │ ├── development-tools_build-utils │ │ │ ├── autocfg.incl.md │ │ │ ├── autocfg.md │ │ │ ├── build_cache.incl.md │ │ │ ├── build_cache.md │ │ │ ├── build_time_tooling.incl.md │ │ │ ├── build_time_tooling.md │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── development-tools_cargo-plugins │ │ │ ├── auditing.incl.md │ │ │ ├── auditing.md │ │ │ ├── building.incl.md │ │ │ ├── building.md │ │ │ ├── code_formatting_linting.incl.md │ │ │ ├── code_formatting_linting.md │ │ │ ├── code_writing.incl.md │ │ │ ├── code_writing.md │ │ │ ├── cross_compiling.incl.md │ │ │ ├── cross_compiling.md │ │ │ ├── dependency_management.incl.md │ │ │ ├── dependency_management.md │ │ │ ├── index.md │ │ │ ├── maintaining.incl.md │ │ │ ├── maintaining.md │ │ │ ├── performance.incl.md │ │ │ ├── performance.md │ │ │ ├── refs.incl.md │ │ │ ├── watching_for_changes.incl.md │ │ │ └── watching_for_changes.md │ │ ├── development-tools_debugging │ │ │ ├── config_log.incl.md │ │ │ ├── config_log.md │ │ │ ├── debugging.incl.md │ │ │ ├── debugging.md │ │ │ ├── diagnostic_functions.incl.md │ │ │ ├── diagnostic_functions.md │ │ │ ├── distributed_telemetry.incl.md │ │ │ ├── distributed_telemetry.md │ │ │ ├── index.md │ │ │ ├── log.incl.md │ │ │ ├── log.md │ │ │ ├── metrics.incl.md │ │ │ ├── metrics.md │ │ │ ├── refs.incl.md │ │ │ ├── tracing.incl.md │ │ │ ├── tracing.md │ │ │ ├── tracing_alternatives.incl.md │ │ │ └── tracing_alternatives.md │ │ ├── development-tools_profiling │ │ │ ├── assembly.incl.md │ │ │ ├── assembly.md │ │ │ ├── benchmarking.incl.md │ │ │ ├── benchmarking.md │ │ │ ├── index.md │ │ │ ├── memory_usage_analysis.incl.md │ │ │ ├── memory_usage_analysis.md │ │ │ └── refs.incl.md │ │ ├── development-tools_testing │ │ │ ├── assertions.incl.md │ │ │ ├── assertions.md │ │ │ ├── code_coverage.incl.md │ │ │ ├── code_coverage.md │ │ │ ├── fuzzing.incl.md │ │ │ ├── fuzzing.md │ │ │ ├── index.md │ │ │ ├── mocking.incl.md │ │ │ ├── mocking.md │ │ │ ├── property_based_testing.incl.md │ │ │ ├── property_based_testing.md │ │ │ ├── refs.incl.md │ │ │ ├── test_runners.incl.md │ │ │ ├── test_runners.md │ │ │ ├── testing.incl.md │ │ │ └── testing.md │ │ ├── email │ │ │ ├── email_parsing.incl.md │ │ │ ├── email_parsing.md │ │ │ ├── index.md │ │ │ ├── refs.incl.md │ │ │ ├── send_emails.incl.md │ │ │ └── send_emails.md │ │ ├── encoding │ │ │ ├── _binary_encoders.incl.md │ │ │ ├── _binary_encoders.md │ │ │ ├── complex_encoding.incl.md │ │ │ ├── complex_encoding.md │ │ │ ├── csv.incl.md │ │ │ ├── csv.md │ │ │ ├── index.md │ │ │ ├── no_external_schema.incl.md │ │ │ ├── no_external_schema.md │ │ │ ├── refs.incl.md │ │ │ ├── serde.incl.md │ │ │ ├── serde.md │ │ │ ├── string_encoding.incl.md │ │ │ ├── string_encoding.md │ │ │ ├── typecasts.incl.md │ │ │ └── typecasts.md │ │ ├── filesystem │ │ │ ├── directories.incl.md │ │ │ ├── directories.md │ │ │ ├── directory_traversal.incl.md │ │ │ ├── directory_traversal.md │ │ │ ├── file_watching.incl.md │ │ │ ├── file_watching.md │ │ │ ├── index.md │ │ │ ├── read-write.incl.md │ │ │ ├── read-write.md │ │ │ ├── refs.incl.md │ │ │ ├── tempfile.incl.md │ │ │ ├── tempfile.md │ │ │ ├── user_directories.incl.md │ │ │ └── user_directories.md │ │ ├── graphics │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── hardware-support │ │ │ ├── index.md │ │ │ ├── peripherals.incl.md │ │ │ ├── peripherals.md │ │ │ ├── processor.incl.md │ │ │ ├── processor.md │ │ │ └── refs.incl.md │ │ ├── mathematics │ │ │ ├── additional_numeric_types.incl.md │ │ │ ├── additional_numeric_types.md │ │ │ ├── complex_numbers.incl.md │ │ │ ├── complex_numbers.md │ │ │ ├── index.md │ │ │ ├── linear_algebra.incl.md │ │ │ ├── linear_algebra.md │ │ │ ├── refs.incl.md │ │ │ ├── statistics.incl.md │ │ │ ├── statistics.md │ │ │ ├── trigonometry.incl.md │ │ │ └── trigonometry.md │ │ ├── memory-management │ │ │ ├── index.md │ │ │ ├── lazy_initialization.incl.md │ │ │ ├── lazy_initialization.md │ │ │ ├── memory_allocation.incl.md │ │ │ ├── memory_allocation.md │ │ │ └── refs.incl.md │ │ ├── network-programming │ │ │ ├── index.md │ │ │ ├── refs.incl.md │ │ │ ├── reverse_proxy.incl.md │ │ │ ├── reverse_proxy.md │ │ │ ├── server.incl.md │ │ │ └── server.md │ │ ├── os │ │ │ ├── external_commands.incl.md │ │ │ ├── external_commands.md │ │ │ ├── index.md │ │ │ ├── low_level_system_calls.incl.md │ │ │ ├── low_level_system_calls.md │ │ │ ├── refs.incl.md │ │ │ ├── rust_os.incl.md │ │ │ └── rust_os.md │ │ ├── os_unix-apis │ │ │ ├── index.md │ │ │ ├── refs.incl.md │ │ │ ├── unix.incl.md │ │ │ └── unix.md │ │ ├── os_windows-apis │ │ │ ├── index.md │ │ │ ├── refs.incl.md │ │ │ ├── windows.incl.md │ │ │ └── windows.md │ │ ├── parser-implementations │ │ │ ├── html.incl.md │ │ │ ├── html.md │ │ │ ├── index.md │ │ │ ├── ini.incl.md │ │ │ ├── ini.md │ │ │ ├── json.incl.md │ │ │ ├── json.md │ │ │ ├── markdown.incl.md │ │ │ ├── markdown.md │ │ │ ├── programming_languages.incl.md │ │ │ ├── programming_languages.md │ │ │ ├── refs.incl.md │ │ │ ├── toml.incl.md │ │ │ ├── toml.md │ │ │ ├── xml.incl.md │ │ │ ├── xml.md │ │ │ ├── yaml.incl.md │ │ │ └── yaml.md │ │ ├── parsing │ │ │ ├── index.md │ │ │ ├── parsing.incl.md │ │ │ ├── parsing.md │ │ │ └── refs.incl.md │ │ ├── rust-patterns │ │ │ ├── behavioral_patterns.incl.md │ │ │ ├── behavioral_patterns.md │ │ │ ├── builder_pattern.incl.md │ │ │ ├── builder_pattern.md │ │ │ ├── creational_patterns.incl.md │ │ │ ├── creational_patterns.md │ │ │ ├── error_handling │ │ │ │ ├── error_customization.incl.md │ │ │ │ ├── error_customization.md │ │ │ │ ├── error_handling.incl.md │ │ │ │ ├── error_handling.md │ │ │ │ └── refs.incl.md │ │ │ ├── functional_programming.incl.md │ │ │ ├── functional_programming.md │ │ │ ├── index.md │ │ │ ├── refs.incl.md │ │ │ ├── rust_specific_patterns.incl.md │ │ │ ├── rust_specific_patterns.md │ │ │ ├── structural_patterns.incl.md │ │ │ └── structural_patterns.md │ │ ├── science │ │ │ └── refs.incl.md │ │ ├── template-engine │ │ │ ├── index.md │ │ │ ├── refs.incl.md │ │ │ ├── tera.incl.md │ │ │ ├── tera.md │ │ │ ├── tinytemplate.incl.md │ │ │ └── tinytemplate.md │ │ ├── text-editors │ │ │ ├── ides.incl.md │ │ │ ├── ides.md │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── text-processing │ │ │ ├── diffing.incl.md │ │ │ ├── diffing.md │ │ │ ├── index.md │ │ │ ├── other_strings.incl.md │ │ │ ├── other_strings.md │ │ │ ├── refs.incl.md │ │ │ ├── regex.incl.md │ │ │ ├── regex.md │ │ │ ├── string_concat.incl.md │ │ │ ├── string_concat.md │ │ │ ├── string_manipulation.incl.md │ │ │ ├── string_manipulation.md │ │ │ ├── string_parsing.incl.md │ │ │ ├── string_parsing.md │ │ │ ├── string_search.incl.md │ │ │ ├── string_search.md │ │ │ ├── unicode.incl.md │ │ │ └── unicode.md │ │ ├── web-programming │ │ │ ├── http_types_and_interfaces.incl.md │ │ │ ├── http_types_and_interfaces.md │ │ │ ├── index.md │ │ │ ├── mime.incl.md │ │ │ ├── mime.md │ │ │ ├── refs.incl.md │ │ │ ├── scraping.incl.md │ │ │ ├── scraping.md │ │ │ ├── url.incl.md │ │ │ └── url.md │ │ ├── web-programming_http-client │ │ │ ├── apis.incl.md │ │ │ ├── apis.md │ │ │ ├── download.incl.md │ │ │ ├── download.md │ │ │ ├── http_clients.incl.md │ │ │ ├── http_clients.md │ │ │ ├── index.md │ │ │ ├── refs.incl.md │ │ │ ├── requests.incl.md │ │ │ └── requests.md │ │ └── web-programming_http-server │ │ │ ├── _actix.incl.md │ │ │ ├── _actix.md │ │ │ ├── _axum.incl.md │ │ │ ├── _axum.md │ │ │ ├── _batteries-included_frameworks.incl.md │ │ │ ├── _batteries-included_frameworks.md │ │ │ ├── _graphql.incl.md │ │ │ ├── _graphql.md │ │ │ ├── _grpc.incl.md │ │ │ ├── _grpc.md │ │ │ ├── _hyper.incl.md │ │ │ ├── _hyper.md │ │ │ ├── cors.incl.md │ │ │ ├── cors.md │ │ │ ├── index.md │ │ │ ├── middleware.incl.md │ │ │ ├── middleware.md │ │ │ ├── other_frameworks.incl.md │ │ │ ├── other_frameworks.md │ │ │ ├── refs.incl.md │ │ │ ├── static_website_generators.incl.md │ │ │ └── static_website_generators.md │ ├── contributing │ │ ├── api_documentation.incl.md │ │ ├── api_documentation.md │ │ ├── dev_container_docker.incl.md │ │ ├── dev_container_docker.md │ │ ├── dev_environment_setup.incl.md │ │ ├── dev_environment_setup.md │ │ ├── development_editing.incl.md │ │ ├── development_editing.md │ │ ├── index.md │ │ ├── optional_preprocessors.incl.md │ │ ├── optional_preprocessors.md │ │ ├── publication.incl.md │ │ ├── publication.md │ │ ├── refs.incl.md │ │ ├── repo_structure.incl.md │ │ └── repo_structure.md │ ├── crate_selection │ │ ├── index.md │ │ └── refs.incl.md │ ├── indices │ │ ├── categories.md │ │ ├── crates_alphabetical.md │ │ ├── crates_and_examples.md │ │ ├── crates_by_category.md │ │ ├── examples_index.md │ │ └── refs.incl.md │ ├── language │ │ ├── data_types.incl.md │ │ ├── data_types.md │ │ ├── generics.incl.md │ │ ├── generics.md │ │ ├── index.incl.md │ │ ├── index.md │ │ ├── macros.incl.md │ │ ├── macros.md │ │ ├── match.incl.md │ │ ├── match.md │ │ ├── rust_install.incl.md │ │ ├── rust_install.md │ │ ├── trait_objects.incl.md │ │ ├── trait_objects.md │ │ ├── traits.incl.md │ │ └── traits.md │ ├── links │ │ ├── blogs_podcasts_meetups.incl.md │ │ ├── blogs_podcasts_meetups.md │ │ ├── books.incl.md │ │ ├── books.md │ │ ├── companies.incl.md │ │ ├── companies.md │ │ ├── example_code.incl.md │ │ ├── example_code.md │ │ ├── index.incl.md │ │ ├── index.md │ │ ├── learning.incl.md │ │ ├── learning.md │ │ ├── links.incl.md │ │ ├── links.md │ │ ├── refs.incl.md │ │ ├── rust_cheatsheets.incl.md │ │ └── rust_cheatsheets.md │ ├── standard_library │ │ ├── interior_mutability.incl.md │ │ ├── interior_mutability.md │ │ ├── rc.incl.md │ │ ├── rc.md │ │ ├── refs.incl.md │ │ └── smart_pointers.md │ └── thanks.md ├── justfile ├── later │ ├── SUMMARY.md │ ├── categories │ │ ├── accessibility │ │ │ ├── index.md │ │ │ ├── refs.incl.md │ │ │ ├── screen_readers.incl.md │ │ │ └── screen_readers.md │ │ ├── aerospace │ │ │ ├── aerospace.incl.md │ │ │ ├── aerospace.md │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── aerospace_drones │ │ │ ├── drones.incl.md │ │ │ ├── drones.md │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── aerospace_protocols │ │ │ ├── aerospace_protocols.incl.md │ │ │ ├── aerospace_protocols.md │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── aerospace_simulation │ │ │ ├── aerospace_simulation.incl.md │ │ │ ├── aerospace_simulation.md │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── aerospace_space-protocols │ │ │ ├── index.md │ │ │ ├── refs.incl.md │ │ │ ├── space_protocols.incl.md │ │ │ └── space_protocols.md │ │ ├── aerospace_unmanned-aerial-vehicles │ │ │ ├── index.md │ │ │ ├── refs.incl.md │ │ │ ├── uavs.incl.md │ │ │ └── uavs.md │ │ ├── api-bindings │ │ │ └── index.md │ │ ├── compilers │ │ │ ├── incremental_computation.incl.md │ │ │ ├── incremental_computation.md │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── computer-vision │ │ │ ├── index.md │ │ │ ├── opencv.incl.md │ │ │ ├── opencv.md │ │ │ └── refs.incl.md │ │ ├── cryptography_cryptocurrencies │ │ │ ├── cryptocurrencies.incl.md │ │ │ ├── cryptocurrencies.md │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── development-tools_ffi │ │ │ ├── erlang_elixir.incl.md │ │ │ ├── erlang_elixir.md │ │ │ ├── flutter.incl.md │ │ │ ├── flutter.md │ │ │ ├── generate_ffi_bindings.incl.md │ │ │ ├── generate_ffi_bindings.md │ │ │ ├── index.md │ │ │ ├── java.incl.md │ │ │ ├── java.md │ │ │ ├── lua.incl.md │ │ │ ├── lua.md │ │ │ ├── node.incl.md │ │ │ ├── node.md │ │ │ ├── objc.incl.md │ │ │ ├── objc.md │ │ │ ├── python.incl.md │ │ │ ├── python.md │ │ │ ├── refs.incl.md │ │ │ ├── ruby.incl.md │ │ │ └── ruby.md │ │ ├── development-tools_procedural-macro-helpers │ │ │ ├── compile_macros.incl.md │ │ │ ├── compile_macros.md │ │ │ ├── index.md │ │ │ ├── macro_tools.incl.md │ │ │ ├── macro_tools.md │ │ │ ├── refs.incl.md │ │ │ ├── write_proc_macros.incl.md │ │ │ └── write_proc_macros.md │ │ ├── embedded │ │ │ ├── embassy.incl.md │ │ │ ├── embassy.md │ │ │ ├── flash.incl.md │ │ │ ├── flash.md │ │ │ ├── hals.incl.md │ │ │ ├── hals.md │ │ │ ├── index.md │ │ │ ├── pacs.incl.md │ │ │ ├── pacs.md │ │ │ ├── refs.incl.md │ │ │ ├── rtos.incl.md │ │ │ ├── rtos.md │ │ │ ├── sensors.inlc.md │ │ │ ├── sensors.md │ │ │ ├── useful_crates_embedded.incl.md │ │ │ └── useful_crates_embedded.md │ │ ├── emulators │ │ │ ├── emulators.incl.md │ │ │ ├── emulators.md │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── external-ffi-bindings │ │ │ ├── external_ffi_bindings.incl.md │ │ │ ├── external_ffi_bindings.md │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── finance │ │ │ ├── index.md │ │ │ ├── quant.incl.md │ │ │ ├── quant.md │ │ │ └── refs.incl.md │ │ ├── game-development │ │ │ ├── game_development.incl.md │ │ │ ├── game_development.md │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── game-engines │ │ │ ├── game_engines.incl.md │ │ │ ├── game_engines.md │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── games │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── gui │ │ │ ├── clipboard.incl.md │ │ │ ├── clipboard.md │ │ │ ├── file_dialogs.incl.md │ │ │ ├── file_dialogs.md │ │ │ ├── gtk.incl.md │ │ │ ├── gtk.md │ │ │ ├── immediate_mode_gui.incl.md │ │ │ ├── immediate_mode_gui.md │ │ │ ├── index.md │ │ │ ├── refs.incl.md │ │ │ ├── retained_mode_gui.incl.md │ │ │ ├── retained_mode_gui.md │ │ │ ├── text_layout.incl.md │ │ │ ├── text_layout.md │ │ │ ├── ui_layout.incl.md │ │ │ ├── ui_layout.md │ │ │ ├── web_based_gui.incl.md │ │ │ ├── web_based_gui.md │ │ │ ├── window_creation.incl.md │ │ │ └── window_creation.md │ │ ├── internationalization │ │ │ ├── index.md │ │ │ ├── internationalization.incl.md │ │ │ ├── internationalization.md │ │ │ └── refs.incl.md │ │ ├── localization │ │ │ ├── index.md │ │ │ ├── localization.incl.md │ │ │ ├── localization.md │ │ │ └── refs.incl.md │ │ ├── multimedia │ │ │ ├── index.md │ │ │ ├── multimedia.incl.md │ │ │ ├── multimedia.md │ │ │ └── refs.incl.md │ │ ├── multimedia_audio │ │ │ ├── audio.incl.md │ │ │ ├── audio.md │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── multimedia_encoding │ │ │ ├── encoding.incl.md │ │ │ ├── encoding.md │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── multimedia_images │ │ │ ├── color_handling.incl.md │ │ │ ├── color_handling.md │ │ │ ├── images.incl.md │ │ │ ├── images.md │ │ │ ├── index.md │ │ │ ├── pixel_buffers.incl.md │ │ │ ├── pixel_buffers.md │ │ │ └── refs.incl.md │ │ ├── multimedia_video │ │ │ ├── index.md │ │ │ ├── refs.incl.md │ │ │ ├── video.incl.md │ │ │ └── video.md │ │ ├── no-std │ │ │ ├── index.md │ │ │ ├── no_std.incl.md │ │ │ ├── no_std.md │ │ │ └── refs.incl.md │ │ ├── no-std_no-alloc │ │ │ ├── index.md │ │ │ ├── no_alloc.incl.md │ │ │ ├── no_alloc.md │ │ │ └── refs.incl.md │ │ ├── os_freebsd-apis │ │ │ ├── freebsd.incl.md │ │ │ ├── freebsd.md │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── os_linux-apis │ │ │ ├── index.md │ │ │ ├── linux.incl.md │ │ │ ├── linux.md │ │ │ └── refs.incl.md │ │ ├── os_macos-apis │ │ │ ├── index.md │ │ │ ├── macos.incl.md │ │ │ ├── macos.md │ │ │ └── refs.incl.md │ │ ├── rendering │ │ │ ├── 2d_raster_graphics.incl.md │ │ │ ├── 2d_raster_graphics.md │ │ │ ├── 2d_renderers.incl.md │ │ │ ├── 2d_renderers.md │ │ │ ├── 2d_vector_graphics.incl.md │ │ │ ├── 2d_vector_graphics.md │ │ │ ├── 3d_renderers.incl.md │ │ │ ├── 3d_renderers.md │ │ │ ├── index.md │ │ │ ├── refs.incl.md │ │ │ ├── svg_rendering.incl.md │ │ │ ├── svg_rendering.md │ │ │ ├── text_rendering.incl.md │ │ │ └── text_rendering.md │ │ ├── rendering_data-formats │ │ │ ├── data_formats.incl.md │ │ │ ├── data_formats.md │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── rendering_engine │ │ │ ├── index.md │ │ │ ├── refs.incl.md │ │ │ ├── rendering_engines.incl.md │ │ │ └── rendering_engines.md │ │ ├── rendering_graphics-api │ │ │ ├── gpu_abstraction_layers.incl.md │ │ │ ├── gpu_abstraction_layers.md │ │ │ ├── index.md │ │ │ ├── native_graphics_apis.incl.md │ │ │ ├── native_graphics_apis.md │ │ │ ├── opengl.incl.md │ │ │ ├── opengl.md │ │ │ ├── refs.incl.md │ │ │ ├── shaders.incl.md │ │ │ ├── shaders.md │ │ │ ├── vulkan.incl.md │ │ │ └── vulkan.md │ │ ├── science │ │ │ ├── classical_machine_learning.incl.md │ │ │ ├── classical_machine_learning.md │ │ │ ├── deep_learning.incl.md │ │ │ ├── deep_learning.md │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── science_geo │ │ │ ├── geo.incl.md │ │ │ ├── geo.md │ │ │ ├── index.md │ │ │ └── refs.incl.md │ │ ├── science_neuroscience │ │ │ ├── index.md │ │ │ ├── neuroscience.incl.md │ │ │ ├── neuroscience.md │ │ │ └── refs.incl.md │ │ ├── science_robotics │ │ │ ├── artificial_intelligence.incl.md │ │ │ ├── artificial_intelligence.md │ │ │ ├── control_systems.incl.md │ │ │ ├── control_systems.md │ │ │ ├── hardware_integration.incl.md │ │ │ ├── hardware_integration.md │ │ │ ├── index.md │ │ │ ├── perception_and_sensors.incl.md │ │ │ ├── perception_and_sensors.md │ │ │ ├── refs.incl.md │ │ │ ├── robot_operating_systems.incl.md │ │ │ ├── robot_operating_systems.md │ │ │ ├── robotics_frameworks.incl.md │ │ │ ├── robotics_frameworks.md │ │ │ ├── simulation_visualization.incl.md │ │ │ └── simulation_visualization.md │ │ ├── simulation │ │ │ ├── index.md │ │ │ ├── physics_engines.incl.md │ │ │ ├── physics_engines.md │ │ │ ├── refs.incl.md │ │ │ ├── simulation.incl.md │ │ │ └── simulation.md │ │ ├── value-formatting │ │ │ ├── index.md │ │ │ ├── number_formatting.incl.md │ │ │ ├── number_formatting.md │ │ │ └── refs.incl.md │ │ ├── virtualization │ │ │ ├── containerization.incl.md │ │ │ ├── containerization.md │ │ │ ├── containers.incl.md │ │ │ ├── containers.md │ │ │ ├── index.md │ │ │ ├── refs.incl.md │ │ │ ├── using_containers.incl.md │ │ │ ├── using_containers.md │ │ │ ├── virtualization.incl.md │ │ │ └── virtualization.md │ │ ├── visualization │ │ │ ├── index.md │ │ │ ├── refs.incl.md │ │ │ ├── visualization.incl.md │ │ │ └── visualization.md │ │ ├── wasm │ │ │ ├── index.md │ │ │ ├── interfacing_with_javascript.incl.md │ │ │ ├── interfacing_with_javascript.md │ │ │ ├── leptos.incl.md │ │ │ ├── leptos.md │ │ │ ├── refs.incl.md │ │ │ ├── wasm_basics.incl.md │ │ │ ├── wasm_basics.md │ │ │ ├── wasm_development.incl.md │ │ │ ├── wasm_development.md │ │ │ ├── wasm_standalone_runtimes.incl.md │ │ │ ├── wasm_standalone_runtimes.md │ │ │ ├── yew.incl.md │ │ │ └── yew.md │ │ └── web-programming_websocket │ │ │ ├── index.md │ │ │ ├── refs.incl.md │ │ │ ├── websocket.incl.md │ │ │ └── websocket.md │ └── other │ │ ├── architecture │ │ ├── architectural_patterns.incl.md │ │ ├── architectural_patterns.md │ │ ├── common_architectures.incl.md │ │ ├── common_architectures.md │ │ ├── index.md │ │ ├── refs.incl.md │ │ ├── software_architecture_process.incl.md │ │ └── software_architecture_process.md │ │ ├── cloud │ │ ├── _fragment.incl.md │ │ ├── _fragment.md │ │ ├── aws.incl.md │ │ ├── aws.md │ │ ├── index.md │ │ ├── refs.incl.md │ │ ├── rust_native_cloud_development.incl.md │ │ └── rust_native_cloud_development.md │ │ ├── cross-platform │ │ ├── crux.incl.md │ │ ├── crux.md │ │ ├── index.md │ │ └── refs.incl.md │ │ ├── data-processing │ │ ├── csv.incl.md │ │ ├── csv.md │ │ ├── data_engineering.incl.md │ │ ├── data_engineering.md │ │ ├── dataframes.incl.md │ │ ├── dataframes.md │ │ ├── index.md │ │ └── refs.incl.md │ │ ├── devops │ │ ├── cd_ci.incl.md │ │ ├── cd_ci.md │ │ ├── github_actions.incl.md │ │ ├── github_actions.md │ │ ├── index.md │ │ ├── refs.incl.md │ │ ├── release_automation.incl.md │ │ ├── release_automation.md │ │ ├── version_control.incl.md │ │ └── version_control.md │ │ ├── gpu │ │ ├── gpu.incl.md │ │ ├── gpu.md │ │ ├── index.md │ │ └── refs.incl.md │ │ ├── scripting │ │ ├── index.md │ │ ├── refs.incl.md │ │ ├── rhai.incl.md │ │ ├── rhai.md │ │ ├── task_automation.incl.md │ │ └── task_automation.md │ │ └── written-in-rust │ │ ├── development_tools.incl.md │ │ ├── development_tools.md │ │ ├── index.md │ │ ├── other_tools.incl.md │ │ ├── other_tools.md │ │ ├── python_tools.incl.md │ │ ├── python_tools.md │ │ └── refs.incl.md ├── master │ ├── README.md │ └── crates.txt ├── scripts │ ├── README.md │ ├── anchors │ │ ├── generate_refdefs_from_anchors.sh │ │ ├── list_missing_anchors.sh │ │ └── mod.just │ ├── book │ │ ├── build_book.sh │ │ ├── mod.just │ │ ├── purge.sh │ │ └── quick.sh │ ├── chapters │ │ ├── hiddenfiles.txt │ │ ├── hide.sh │ │ ├── list_chapters.sh │ │ ├── mod.just │ │ └── unhide.sh │ ├── code │ │ ├── heavy_test.sh │ │ └── mod.just │ ├── crates │ │ └── mod.just │ ├── deps │ │ └── mod.just │ ├── docker │ │ ├── adv_push_ci.sh │ │ └── mod.just │ ├── docs │ │ └── mod.just │ ├── examples │ │ ├── convert_example_placeholders.sh │ │ ├── create.sh │ │ ├── list_examples_not_used_in_book.sh │ │ └── mod.just │ ├── gh │ │ └── mod.just │ ├── includes │ │ ├── list_missing_local_ref_includes.sh │ │ ├── list_missing_subchapter_includes.sh │ │ └── mod.just │ ├── indices │ │ ├── generate_index_of_examples.sh │ │ ├── generate_language_index.sh │ │ ├── mod.just │ │ └── update_refdefs_for_index_of_examples.sh │ ├── links │ │ ├── cross_link.sh │ │ ├── dewikilink.sh │ │ ├── get_link.sh │ │ ├── insert_category_links.sh │ │ ├── insert_crate_links.sh │ │ ├── mod.just │ │ ├── replace_inline_links.sh │ │ └── suggest_links_for_bare_urls.sh │ ├── precommit │ │ └── mod.just │ ├── recipes │ │ ├── fix_recipe_tables.sh │ │ ├── fix_recipe_titles.sh │ │ └── mod.just │ ├── refdefs │ │ ├── check_refdefs.sh │ │ ├── mod.just │ │ └── sort_refdefs.sh │ ├── spelling │ │ ├── dictionary.txt │ │ ├── mod.just │ │ └── spellcheck.sh │ ├── titles │ │ └── mod.just │ ├── toc │ │ ├── list_missing_chapters_in_toc.sh │ │ └── mod.just │ ├── urls │ │ ├── check_urls.sh │ │ ├── list_duplicated_urls.sh │ │ └── mod.just │ └── utils │ │ └── mod.just ├── src │ ├── SUMMARY.md │ ├── code_organization │ │ ├── code_organization.incl.md │ │ ├── code_organization.md │ │ ├── dependencies.incl.md │ │ ├── dependencies.md │ │ ├── index.incl.md │ │ ├── index.md │ │ ├── modules.incl.md │ │ ├── modules.md │ │ ├── refs.incl.md │ │ ├── use_keyword.incl.md │ │ ├── use_keyword.md │ │ ├── visibility.incl.md │ │ └── visibility.md │ ├── contributing │ │ ├── refs.incl.md │ │ ├── topics_of_interest.incl.md │ │ └── topics_of_interest.md │ ├── index.md │ ├── language │ │ ├── attributes.incl.md │ │ ├── attributes.md │ │ ├── closures.incl.md │ │ ├── closures.md │ │ ├── constants_and_statics.incl.md │ │ ├── constants_and_statics.md │ │ ├── control_flow.incl.md │ │ ├── control_flow.md │ │ ├── entrypoint.incl.md │ │ ├── entrypoint.md │ │ ├── enums.incl.md │ │ ├── enums.md │ │ ├── functions.incl.md │ │ ├── functions.md │ │ ├── iterators.incl.md │ │ ├── iterators.md │ │ ├── lifetimes.incl.md │ │ ├── lifetimes.md │ │ ├── naming_conventions.incl.md │ │ ├── naming_conventions.md │ │ ├── ownership_borrowing.incl.md │ │ ├── ownership_borrowing.md │ │ ├── refs.incl.md │ │ ├── slices.incl.md │ │ ├── slices.md │ │ ├── structs.incl.md │ │ ├── structs.md │ │ ├── variables.incl.md │ │ └── variables.md │ ├── refs.incl.md │ ├── refs │ │ ├── category-refs.md │ │ ├── crate-refs.md │ │ ├── link-refs.md │ │ └── other-refs.md │ ├── standard_library │ │ ├── asref.incl.md │ │ ├── asref.md │ │ ├── box.incl.md │ │ ├── box.md │ │ ├── cow.incl.md │ │ ├── cow.md │ │ ├── derive.incl.md │ │ ├── derive.md │ │ ├── index.md │ │ ├── option.incl.md │ │ ├── option.md │ │ ├── refs.incl.md │ │ ├── result.incl.md │ │ ├── result.md │ │ └── smart_pointers.incl.md │ └── word_index.md ├── static │ ├── android-chrome-192x192.png │ ├── android-chrome-512x512.png │ ├── apple-touch-icon.png │ ├── favicon-16x16.png │ ├── favicon-32x32.png │ ├── favicon.ico │ ├── ferris │ │ ├── rustacean-flat-happy.png │ │ ├── rustacean-flat-happy.svg │ │ ├── rustacean-orig-noshadow.png │ │ └── rustacean-orig-noshadow.svg │ ├── logo │ │ └── logo_large.png │ └── site.webmanifest └── theme │ ├── custom.css │ └── index.hbs ├── googleebeeacff1e2f9e08.html ├── justfile ├── mdbook-scrub ├── .cargo │ └── config.toml ├── .markdownlint.yaml ├── Cargo.lock ├── Cargo.toml ├── LICENSE-APACHE ├── LICENSE-MIT ├── README.md ├── justfile ├── rustfmt.toml ├── src │ ├── conf.rs │ ├── lib.rs │ ├── main.rs │ └── regexes.rs ├── test_book │ ├── book.toml │ └── src │ │ ├── SUMMARY.md │ │ ├── _hidden.rs │ │ ├── categories.md │ │ ├── crate_blocks.md │ │ ├── crates.md │ │ ├── examples.md │ │ ├── hidden.md │ │ ├── included.txt │ │ ├── others.md │ │ ├── refs.md │ │ └── wikilinks.md └── tests │ └── test.rs ├── playground ├── .cargo │ └── config.toml ├── Cargo.lock ├── Cargo.toml ├── LICENSE-APACHE ├── LICENSE-MIT ├── README.md ├── autogen │ ├── Cargo.toml │ ├── README.md │ ├── src │ │ ├── cli.rs │ │ ├── lib.rs │ │ ├── main.rs │ │ └── parser │ │ │ ├── markdown_links.pest │ │ │ └── mod.rs │ └── templates │ │ ├── chapter │ │ ├── chapter.md │ │ ├── index.incl.md │ │ ├── index.md │ │ ├── refs.incl.md │ │ └── subchapter.md │ │ └── macros.md ├── bits_and_pieces │ ├── .cargo-husky │ │ └── hooks │ │ │ ├── pre-commit │ │ │ └── pre-push │ ├── bacon.toml │ ├── buildinfo │ │ └── build-info.rs │ ├── deny.toml │ ├── github │ │ ├── build_cross_platform.yml │ │ └── workflow.yml │ ├── just │ │ ├── justfile │ │ └── justfile.2 │ ├── link_checker │ │ ├── links │ │ │ ├── asynchro.rs │ │ │ ├── link.rs │ │ │ └── mod.rs │ │ ├── other │ │ │ └── cow_map_ext.rs │ │ └── refdefs │ │ │ ├── fs.rs │ │ │ └── mod.rs │ ├── pre-commit │ │ └── .pre-commit-config.yaml │ ├── preprocessor │ │ └── test.rs │ ├── scripts │ │ └── script_template.rs │ └── skeptic │ │ └── build.rs ├── examples_wip │ ├── Cargo.toml │ ├── examples │ │ ├── asref2.rs │ │ ├── inline_links.rs │ │ ├── main_test.rs │ │ └── modules1.rs │ └── src │ │ └── main.rs └── justfile ├── publish ├── .cargo │ └── config.toml ├── Cargo.lock ├── Cargo.toml ├── LICENSE-APACHE ├── LICENSE-MIT ├── README.md ├── justfile └── src │ └── main.rs ├── tools ├── .cargo │ └── config.toml ├── Cargo.lock ├── Cargo.toml ├── LICENSE-APACHE ├── LICENSE-MIT ├── clean │ ├── Cargo.toml │ ├── README.md │ └── src │ │ └── main.rs ├── crate_indices │ ├── Cargo.toml │ ├── README.md │ └── src │ │ ├── cli │ │ ├── commands.rs │ │ └── mod.rs │ │ └── main.rs ├── justfile ├── links │ ├── Cargo.toml │ └── src │ │ └── main.rs ├── rustfmt.toml ├── templ │ ├── Cargo.toml │ ├── README.md │ └── src │ │ ├── cli │ │ ├── badge_cmd.rs │ │ ├── category_badge_cmd.rs │ │ ├── category_badges_for_crate_cmd.rs │ │ ├── config_flag.rs │ │ ├── crate_name_arg.rs │ │ ├── info_cmd.rs │ │ ├── mod.rs │ │ └── rbe.rs │ │ ├── config_cmd.rs │ │ ├── create_badge.rs │ │ └── main.rs └── tool_lib │ ├── Cargo.toml │ ├── README.md │ └── src │ ├── all_categories │ ├── mod.rs │ └── request.rs │ ├── cargo_toml │ └── mod.rs │ ├── crates_io │ ├── categories_for_crate.rs │ ├── info.rs │ └── mod.rs │ ├── lib.rs │ ├── model │ ├── book │ │ ├── chapter.rs │ │ ├── exampleindex.rs │ │ ├── mod.rs │ │ ├── recipe.rs │ │ ├── renderable.rs │ │ └── subchapter.rs │ ├── category.rs │ ├── crates.rs │ └── mod.rs │ ├── read_write │ ├── backup.rs │ ├── diff.rs │ ├── ext.rs │ ├── merge.rs │ └── mod.rs │ ├── templates │ ├── category_badge.rs │ ├── crates_alphabetical.rs │ ├── crates_badges.rs │ ├── crates_by_category.rs │ ├── index_anchors.rs │ ├── mod.rs │ └── rbe.rs │ └── tera │ ├── filters.rs │ └── mod.rs └── xmpl ├── .cargo └── config.toml ├── Cargo.lock ├── Cargo.toml ├── LICENSE ├── README.md ├── clap_builder_xmpl ├── Cargo.toml └── src │ ├── cli │ ├── args.rs │ ├── cmd.rs │ ├── config.rs │ ├── mod.rs │ ├── opencmd.rs │ ├── querycmd.rs │ └── testcmd.rs │ └── main.rs ├── justfile └── scripts └── runall.sh /.devcontainer/compose.yaml: -------------------------------------------------------------------------------- 1 | # Docker Compose reference guide: https://docs.docker.com/go/compose-spec-reference/ 2 | services: 3 | book: 4 | build: 5 | context: .. 6 | dockerfile: .devcontainer/Dockerfile # path relative to context 7 | args: 8 | RUST_IMAGE_LABEL: ${RUST_IMAGE_LABEL:?rust image label must be defined} 9 | MDBOOK_VERSION: ${MDBOOK_VERSION:?mdbook version must be defined} 10 | -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [john-cd] 4 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "search.exclude": { 3 | "**/target": true 4 | }, 5 | } 6 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contributing 2 | 3 | First off, thanks for taking the time to contribute! 4 | 5 | The book includes a detailed [Contributing] section. 6 | 7 | [Contributing]: https://john-cd.com/rust_howto/contributing/index.html 8 | -------------------------------------------------------------------------------- /bin/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | 3 | This folder stores the tool executables used to generate parts of the book or used by the book building process. 4 | Generate these excutables using `just tools release` or `just scrub release`. 5 | -------------------------------------------------------------------------------- /bk/.env: -------------------------------------------------------------------------------- 1 | # Base url of the website where the book will be deployed 2 | # (used to build sitemaps) 3 | export BASE_URL=http://john-cd.com/rust_howto/ 4 | -------------------------------------------------------------------------------- /bk/crates/about/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | 3 | This crate contains the code examples used in the book's introduction. 4 | -------------------------------------------------------------------------------- /bk/crates/cats/accessibility/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/accessibility/tests/screen_readers/main.rs: -------------------------------------------------------------------------------- 1 | mod accesskit; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/aerospace/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/aerospace/tests/aerospace/aero.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/60) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/aerospace/tests/aerospace/main.rs: -------------------------------------------------------------------------------- 1 | mod aero; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/aerospace_drones/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/aerospace_drones/tests/drones/drones1.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/61) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/aerospace_drones/tests/drones/main.rs: -------------------------------------------------------------------------------- 1 | mod drones1; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/aerospace_protocols/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/aerospace_protocols/tests/aerospace_protocols/aero_protocols.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/62) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/aerospace_protocols/tests/aerospace_protocols/main.rs: -------------------------------------------------------------------------------- 1 | mod aero_protocols; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/aerospace_simulation/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/aerospace_simulation/tests/aerospace_simulation/aero_simulation.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/63) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/aerospace_simulation/tests/aerospace_simulation/main.rs: -------------------------------------------------------------------------------- 1 | mod aero_simulation; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/aerospace_space_protocols/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/aerospace_space_protocols/tests/space_protocols/main.rs: -------------------------------------------------------------------------------- 1 | mod space_protocols; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/aerospace_space_protocols/tests/space_protocols/space_protocols.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/64) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/aerospace_unmanned_aerial_vehicles/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/aerospace_unmanned_aerial_vehicles/tests/uavs/main.rs: -------------------------------------------------------------------------------- 1 | mod uavs; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/aerospace_unmanned_aerial_vehicles/tests/uavs/uavs.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/65) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/algorithms/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/algorithms/tests/sort/main.rs: -------------------------------------------------------------------------------- 1 | mod sort1; 2 | mod sort_float; 3 | mod sort_struct; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/api_bindings/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/api_bindings/src/lib.rs: -------------------------------------------------------------------------------- 1 | // Empty 2 | -------------------------------------------------------------------------------- /bk/crates/cats/asynchronous/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/asynchronous/tests/async/main.rs: -------------------------------------------------------------------------------- 1 | mod async1; 2 | mod async2; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/asynchronous/tests/async_channels/main.rs: -------------------------------------------------------------------------------- 1 | mod async_channel; 2 | mod async_channels_mpsc; 3 | mod async_channels_oneshot; 4 | mod async_channels_oneshot2; 5 | mod kanal; 6 | mod postage; 7 | -------------------------------------------------------------------------------- /bk/crates/cats/asynchronous/tests/async_traits/main.rs: -------------------------------------------------------------------------------- 1 | mod async_traits; 2 | mod async_traits2; 3 | mod async_traits3; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/asynchronous/tests/call_async_from_blocking/main.rs: -------------------------------------------------------------------------------- 1 | mod call_async_from_blocking_futures_executor; 2 | mod call_async_from_blocking_tokio_runtime; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/asynchronous/tests/call_blocking_from_async/main.rs: -------------------------------------------------------------------------------- 1 | mod call_blocking_from_async_rayon; 2 | mod call_blocking_from_async_spawn_blocking; 3 | mod call_blocking_from_async_spawn_dedicated_thread; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/asynchronous/tests/futures/main.rs: -------------------------------------------------------------------------------- 1 | mod futures1; 2 | mod futures2; 3 | mod futures3; 4 | mod futures_util; 5 | -------------------------------------------------------------------------------- /bk/crates/cats/asynchronous/tests/streams/main.rs: -------------------------------------------------------------------------------- 1 | mod streams; 2 | mod streams2; 3 | mod streams3; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/asynchronous/tests/tokio/main.rs: -------------------------------------------------------------------------------- 1 | mod tokio2; 2 | mod tokio21; 3 | mod tokio_graceful_shutdown; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/asynchronous/tests/tokio/tokio2.rs: -------------------------------------------------------------------------------- 1 | // ANCHOR: example 2 | /// Example of using a single-threaded Tokio runtime. 3 | fn main() { 4 | tokio::runtime::Builder::new_current_thread() 5 | .enable_all() 6 | .build() 7 | .unwrap() 8 | .block_on(async { 9 | println!("Hello world"); 10 | }) 11 | } 12 | // ANCHOR_END: example 13 | 14 | #[test] 15 | fn test() { 16 | main(); 17 | } 18 | -------------------------------------------------------------------------------- /bk/crates/cats/authentication/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/authentication/tests/basic_authentication/main.rs: -------------------------------------------------------------------------------- 1 | mod basic; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/caching/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/caching/tests/in_memory_cache/main.rs: -------------------------------------------------------------------------------- 1 | mod cached; 2 | mod lru; 3 | mod moka; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/command_line_interface/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/command_line_interface/tests/ansi_term/ansi_term_basic1.rs: -------------------------------------------------------------------------------- 1 | // ANCHOR: example 2 | use ansi_term::Style; 3 | 4 | /// Basic example of using ansi_term to print bold text. 5 | fn main() { 6 | println!( 7 | "{} and this is not", 8 | Style::new().bold().paint("This is Bold") 9 | ); 10 | } 11 | // ANCHOR_END: example 12 | 13 | #[test] 14 | fn test() { 15 | main(); 16 | } 17 | -------------------------------------------------------------------------------- /bk/crates/cats/command_line_interface/tests/ansi_term/main.rs: -------------------------------------------------------------------------------- 1 | mod ansi_term_basic; 2 | mod ansi_term_basic1; 3 | mod ansi_term_basic2; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/command_line_interface/tests/arguments/main.rs: -------------------------------------------------------------------------------- 1 | mod clap; 2 | mod clap_basic; 3 | mod lexopt; 4 | mod pico_args; 5 | -------------------------------------------------------------------------------- /bk/crates/cats/command_line_interface/tests/user_interaction/main.rs: -------------------------------------------------------------------------------- 1 | mod indicatif; 2 | mod indicatif2; 3 | mod inquire; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/compilers/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/compilers/tests/incremental_computation/main.rs: -------------------------------------------------------------------------------- 1 | mod comemo; 2 | mod salsa; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/compression/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/compression/tests/compression/main.rs: -------------------------------------------------------------------------------- 1 | mod async_compression; 2 | mod flate2; 3 | mod zip; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/compression/tests/tar/main.rs: -------------------------------------------------------------------------------- 1 | #![cfg(target_family = "unix")] 2 | 3 | mod tar_compress; 4 | mod tar_decompress; 5 | mod tar_strip_prefix; 6 | 7 | #[test] 8 | fn test() -> anyhow::Result<()> { 9 | tar_compress::main()?; 10 | // the following requires the archive created above. 11 | tar_strip_prefix::main()?; 12 | tar_decompress::main()?; 13 | 14 | Ok(()) 15 | } 16 | -------------------------------------------------------------------------------- /bk/crates/cats/computer_vision/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/computer_vision/tests/opencv/main.rs: -------------------------------------------------------------------------------- 1 | mod opencv; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/concurrency/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/concurrency/tests/actors/main.rs: -------------------------------------------------------------------------------- 1 | mod actix; 2 | mod actors; 3 | mod ractor; 4 | mod stakker; 5 | -------------------------------------------------------------------------------- /bk/crates/cats/concurrency/tests/atomics/main.rs: -------------------------------------------------------------------------------- 1 | mod atomic_cell; 2 | mod atomics; 3 | mod spinlock; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/concurrency/tests/concurrent_data_structures/main.rs: -------------------------------------------------------------------------------- 1 | mod crossbeam_queue; 2 | mod dashmap; 3 | mod flurry; 4 | mod papaya; 5 | -------------------------------------------------------------------------------- /bk/crates/cats/concurrency/tests/crossbeam/main.rs: -------------------------------------------------------------------------------- 1 | mod crossbeam_complex; 2 | mod crossbeam_spawn; 3 | mod crossbeam_spsc; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/concurrency/tests/data_parallelism/main.rs: -------------------------------------------------------------------------------- 1 | mod multithreading_rayon; 2 | mod multithreading_rayon_custom; 3 | mod multithreading_rayon_parsort; 4 | mod rayon_any_all; 5 | mod rayon_iter_mut; 6 | mod rayon_map_reduce; 7 | mod rayon_parallel_search; 8 | mod rayon_parallel_sort; 9 | mod rayon_thumbnails; 10 | -------------------------------------------------------------------------------- /bk/crates/cats/concurrency/tests/data_parallelism/multithreading_rayon_parsort.rs: -------------------------------------------------------------------------------- 1 | // ANCHOR: example 2 | use rayon::prelude::*; 3 | 4 | /// Sorts the vector in parallel using Rayon's `par_sort` method. 5 | fn main() { 6 | let mut v = [-5, 4, 1, -3, 2]; 7 | v.par_sort(); 8 | println!("{:#?}", v); 9 | } 10 | // ANCHOR_END: example 11 | 12 | #[test] 13 | fn test() { 14 | main(); 15 | } 16 | -------------------------------------------------------------------------------- /bk/crates/cats/concurrency/tests/explicit_threads/main.rs: -------------------------------------------------------------------------------- 1 | mod multithreading_scoped_threads; 2 | mod multithreading_spawn_join; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/concurrency/tests/message_passing/main.rs: -------------------------------------------------------------------------------- 1 | mod flume; 2 | mod message_passing_crossbeam_channel; 3 | mod message_passing_crossbeam_channel_after_tick; 4 | mod message_passing_mpsc; 5 | -------------------------------------------------------------------------------- /bk/crates/cats/concurrency/tests/send_sync/main.rs: -------------------------------------------------------------------------------- 1 | mod send_sync; 2 | mod send_sync_impl; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/concurrency/tests/shared_state/main.rs: -------------------------------------------------------------------------------- 1 | mod global_mut_state; 2 | mod shared_state_mutex; 3 | mod shared_state_parking_lot; 4 | mod shared_state_parking_lot2; 5 | -------------------------------------------------------------------------------- /bk/crates/cats/concurrency/tests/threadpool/main.rs: -------------------------------------------------------------------------------- 1 | mod threadpool_fractal; 2 | mod threadpool_walk; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/config/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/config/tests/configuration/main.rs: -------------------------------------------------------------------------------- 1 | mod config_hierarchical; 2 | mod config_singleton; 3 | mod config_testing; 4 | mod confy; 5 | -------------------------------------------------------------------------------- /bk/crates/cats/config/tests/env/main.rs: -------------------------------------------------------------------------------- 1 | mod dotenvy; 2 | mod env; 3 | mod envy; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/cryptography/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/cryptography/tests/aead/main.rs: -------------------------------------------------------------------------------- 1 | mod aes_gcm; 2 | mod aes_gcm_siv; 3 | mod chacha20poly1305; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/cryptography/tests/certs/main.rs: -------------------------------------------------------------------------------- 1 | mod der; 2 | mod pem_rfc7468; 3 | mod pkcs8; 4 | mod x509_cert; 5 | -------------------------------------------------------------------------------- /bk/crates/cats/cryptography/tests/hashing/main.rs: -------------------------------------------------------------------------------- 1 | mod blake3; 2 | mod md_5; 3 | mod sha1; 4 | mod sha2; 5 | mod sha_digest; 6 | -------------------------------------------------------------------------------- /bk/crates/cats/cryptography/tests/password_hashing/main.rs: -------------------------------------------------------------------------------- 1 | mod argon2; 2 | mod bcrypt; 3 | mod pbkdf2; 4 | mod scrypt; 5 | -------------------------------------------------------------------------------- /bk/crates/cats/cryptography/tests/sign/main.rs: -------------------------------------------------------------------------------- 1 | mod dsa; 2 | mod ecdsa; 3 | mod ed25519; 4 | mod ed25519_dalek; 5 | mod hmac; 6 | -------------------------------------------------------------------------------- /bk/crates/cats/cryptography/tests/tls/main.rs: -------------------------------------------------------------------------------- 1 | mod native_tls; 2 | mod rustls; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/cryptography/tests/utilities/main.rs: -------------------------------------------------------------------------------- 1 | mod subtle; 2 | mod zeroize; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/cryptography_cryptocurrencies/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/cryptography_cryptocurrencies/tests/cryptocurrencies/cryptocurrencies.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/707) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/cryptography_cryptocurrencies/tests/cryptocurrencies/main.rs: -------------------------------------------------------------------------------- 1 | mod cryptocurrencies; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/data_structures/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/data_structures/tests/binaryheap/main.rs: -------------------------------------------------------------------------------- 1 | mod binaryheap; 2 | mod priority_queue; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/data_structures/tests/bitfield/main.rs: -------------------------------------------------------------------------------- 1 | mod bitfield; 2 | mod bitvec; 3 | mod flagset; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/data_structures/tests/btrees/main.rs: -------------------------------------------------------------------------------- 1 | mod btreemap; 2 | mod btreeset; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/data_structures/tests/graph/main.rs: -------------------------------------------------------------------------------- 1 | mod petgraph; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/data_structures/tests/hashmap/main.rs: -------------------------------------------------------------------------------- 1 | mod custom_hash_function; 2 | mod custom_type_as_key; 3 | mod hashmap; 4 | mod hashset; 5 | -------------------------------------------------------------------------------- /bk/crates/cats/data_structures/tests/linkedlist/main.rs: -------------------------------------------------------------------------------- 1 | mod linkedlist; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/data_structures/tests/maps/main.rs: -------------------------------------------------------------------------------- 1 | mod indexmap; 2 | mod multimap; 3 | mod slotmap; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/data_structures/tests/stack_and_queue/main.rs: -------------------------------------------------------------------------------- 1 | mod queue; 2 | mod stack; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/data_structures/tests/strings/main.rs: -------------------------------------------------------------------------------- 1 | mod string_format; 2 | mod strings; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/data_structures/tests/vec/main.rs: -------------------------------------------------------------------------------- 1 | mod arrayvec; 2 | mod smallvec; 3 | mod tinyvec; 4 | mod vectors; 5 | -------------------------------------------------------------------------------- /bk/crates/cats/database/.env: -------------------------------------------------------------------------------- 1 | DATABASE_URL=sqlite::memory: 2 | 3 | # For the deadpool2 example 4 | PG__HOST=rust_howto_dev-postgres-1 5 | PG__USER=postgres 6 | PG__PASSWORD=mysecretpassword 7 | PG__DBNAME=example 8 | PG__POOL__MAX_SIZE=16 9 | PG__POOL__TIMEOUTS__WAIT__SECS=5 10 | PG__POOL__TIMEOUTS__WAIT__NANOS=0 11 | -------------------------------------------------------------------------------- /bk/crates/cats/database/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/database/diesel.toml: -------------------------------------------------------------------------------- 1 | # For documentation on how to configure this file, 2 | # see https://diesel.rs/guides/configuring-diesel-cli 3 | 4 | [print_schema] 5 | file = "/code/bk/crates/cats/database/tests/query_builders_orms/schema.rs" 6 | custom_type_derives = ["diesel::query_builder::QueryId", "Clone"] 7 | 8 | [migrations_directory] 9 | dir = "/code/bk/crates/cats/database/tests/query_builders_orms/migrations" 10 | -------------------------------------------------------------------------------- /bk/crates/cats/database/tests/amqp/main.rs: -------------------------------------------------------------------------------- 1 | mod lapin; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/database/tests/cassandra/main.rs: -------------------------------------------------------------------------------- 1 | mod cassandra_protocol; 2 | mod cdrs_tokio; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/database/tests/connection_pool/main.rs: -------------------------------------------------------------------------------- 1 | mod deadpool; 2 | mod deadpool2; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/database/tests/kv/main.rs: -------------------------------------------------------------------------------- 1 | mod heed; 2 | mod rocksdb; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/database/tests/mssql/main.rs: -------------------------------------------------------------------------------- 1 | mod tiberius; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/database/tests/nosql/main.rs: -------------------------------------------------------------------------------- 1 | mod mongodb; 2 | mod redis; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/database/tests/oracle/main.rs: -------------------------------------------------------------------------------- 1 | mod diesel_oci; 2 | mod oracle; 3 | #[cfg(target_os = "linux")] 4 | mod sibyl; 5 | -------------------------------------------------------------------------------- /bk/crates/cats/database/tests/postgres/main.rs: -------------------------------------------------------------------------------- 1 | mod aggregate_data; 2 | mod create_tables; 3 | mod insert_query_data; 4 | 5 | mod cornucopia; 6 | mod tokio_postgres; 7 | 8 | #[test] 9 | fn require_external_svc() -> anyhow::Result<()> { 10 | create_tables::main()?; 11 | insert_query_data::main()?; 12 | // aggregate_data::main()?; 13 | Ok(()) 14 | } 15 | // [review NOW](https://github.com/john-cd/rust_howto/issues/713) 16 | -------------------------------------------------------------------------------- /bk/crates/cats/database/tests/query_builders_orms/main.rs: -------------------------------------------------------------------------------- 1 | mod diesel1; 2 | mod sea_orm; 3 | mod sqlx; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/database/tests/query_builders_orms/migrations/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/john-cd/rust_howto/8d198a7963c467d4ee4cd041ef4624d86e03e4eb/bk/crates/cats/database/tests/query_builders_orms/migrations/.keep -------------------------------------------------------------------------------- /bk/crates/cats/database/tests/query_builders_orms/migrations/2024-12-29-173417_create_users/down.sql: -------------------------------------------------------------------------------- 1 | -- This file should undo anything in `up.sql` 2 | -------------------------------------------------------------------------------- /bk/crates/cats/database/tests/query_builders_orms/migrations/2024-12-29-173417_create_users/up.sql: -------------------------------------------------------------------------------- 1 | -- Your SQL goes here 2 | CREATE TABLE users ( 3 | id INTEGER PRIMARY KEY AUTOINCREMENT, 4 | name TEXT NOT NULL, 5 | email TEXT NOT NULL UNIQUE 6 | ); 7 | -------------------------------------------------------------------------------- /bk/crates/cats/database/tests/search/main.rs: -------------------------------------------------------------------------------- 1 | mod elasticsearch; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/database/tests/sqlite/main.rs: -------------------------------------------------------------------------------- 1 | #![cfg(target_os = "linux")] 2 | 3 | mod initialization; 4 | mod insert_select; 5 | mod transactions; 6 | 7 | #[test] 8 | fn test() -> anyhow::Result<()> { 9 | let _ = std::fs::remove_file("temp/cats.db"); 10 | initialization::main()?; 11 | insert_select::main()?; 12 | transactions::main()?; 13 | Ok(()) 14 | } 15 | -------------------------------------------------------------------------------- /bk/crates/cats/database_implementations/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/database_implementations/tests/databases/main.rs: -------------------------------------------------------------------------------- 1 | mod sled; 2 | mod surrealdb; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/database_implementations/tests/search/main.rs: -------------------------------------------------------------------------------- 1 | mod meilisearch; 2 | mod tantivy; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/date_and_time/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/date_and_time/tests/chrono/main.rs: -------------------------------------------------------------------------------- 1 | mod checked; 2 | mod current; 3 | mod format; 4 | mod parse_string_into_datetime; 5 | mod timestamp; 6 | mod timezone; 7 | -------------------------------------------------------------------------------- /bk/crates/cats/date_and_time/tests/duration/main.rs: -------------------------------------------------------------------------------- 1 | mod profile; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools/NOTES.md: -------------------------------------------------------------------------------- 1 | # NOTES 2 | 3 | A few tests use attributes that must be applied at the crate level. 4 | As such, they must be placed at the root of the `tests` folder. 5 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools/src/lib.rs: -------------------------------------------------------------------------------- 1 | mod kani; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools/tests/crate_registries/main.rs: -------------------------------------------------------------------------------- 1 | mod crates_io; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools/tests/documentation/main.rs: -------------------------------------------------------------------------------- 1 | mod rustdoc; 2 | mod rustdoc2; 3 | mod rustdoc3; 4 | // rustdoc4 is in the `tests` folder 5 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools/tests/semver/main.rs: -------------------------------------------------------------------------------- 1 | mod semver_command; 2 | mod semver_complex; 3 | mod semver_latest; 4 | mod semver_parse; 5 | mod semver_prerelease; 6 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_build_utils/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_build_utils/tests/autocfg/main.rs: -------------------------------------------------------------------------------- 1 | mod autocfg; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_build_utils/tests/build_time_tooling/main.rs: -------------------------------------------------------------------------------- 1 | mod cc_bundled_cpp; 2 | mod cc_bundled_cpp1; 3 | mod cc_bundled_static; 4 | mod cc_bundled_static1; 5 | mod cc_defines; 6 | mod cc_defines1; 7 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_cargo_plugins/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_cargo_plugins/src/lib.rs: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_cargo_plugins/tests/building/main.rs: -------------------------------------------------------------------------------- 1 | mod xshell; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_debugging/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_debugging/tests/log/main.rs: -------------------------------------------------------------------------------- 1 | mod log_custom; 2 | mod log_custom_logger; 3 | mod log_debug; 4 | mod log_env_variable; 5 | mod log_error; 6 | mod log_mod; 7 | mod log_stdout; 8 | mod log_syslog; 9 | mod log_timestamp; 10 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_debugging/tests/other/main.rs: -------------------------------------------------------------------------------- 1 | mod open_observe; 2 | mod open_telemetry; 3 | mod slog; 4 | mod type_name_of_val; 5 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_debugging/tests/tracing/main.rs: -------------------------------------------------------------------------------- 1 | mod tracing; 2 | mod tracing_instrument; 3 | mod tracing_span_entered; 4 | mod tracing_span_in_scope; 5 | mod tracing_spans; 6 | mod tracing_subscriber; 7 | mod tracing_subscriber1; 8 | mod tracing_subscriber1b; 9 | mod tracing_subscriber2; 10 | mod tracing_subscriber2b; 11 | mod tracing_subscriber3; 12 | mod tracing_subscriber3b; 13 | mod tracing_subscriber4; 14 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_ffi/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_ffi/tests/c/example.c: -------------------------------------------------------------------------------- 1 | // ANCHOR: example 2 | #include "example.h" 3 | 4 | int add(int a, int b) { 5 | return a + b; 6 | } 7 | // ANCHOR_END: example 8 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_ffi/tests/c/example.h: -------------------------------------------------------------------------------- 1 | // ANCHOR example 2 | #ifndef EXAMPLE_H 3 | #define EXAMPLE_H 4 | 5 | int add(int a, int b); 6 | 7 | #endif // EXAMPLE_H 8 | // ANCHOR_END: example 9 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_ffi/tests/c/main.rs: -------------------------------------------------------------------------------- 1 | mod bindgen; 2 | mod cbindgen; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_ffi/tests/cpp/hello.h: -------------------------------------------------------------------------------- 1 | // ANCHOR: example 2 | #pragma once 3 | #include 4 | 5 | void hello(const std::string& name); 6 | // ANCHOR_END: example 7 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_ffi/tests/cpp/main.rs: -------------------------------------------------------------------------------- 1 | mod cxx; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_ffi/tests/erlang_elixir/main.rs: -------------------------------------------------------------------------------- 1 | mod rustler; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_ffi/tests/flutter/main.rs: -------------------------------------------------------------------------------- 1 | mod flutter_rust_bridge; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_ffi/tests/flutter/pubspec.yaml: -------------------------------------------------------------------------------- 1 | dependencies: 2 | flutter: 3 | sdk: flutter 4 | 5 | dev_dependencies: 6 | flutter_test: 7 | sdk: flutter 8 | flutter_rust_bridge_codegen: ^1.0.0 9 | build_runner: ^2.0.0 10 | 11 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_ffi/tests/java/main.rs: -------------------------------------------------------------------------------- 1 | mod jni; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_ffi/tests/lua/main.rs: -------------------------------------------------------------------------------- 1 | mod mlua; 2 | mod mlua2; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_ffi/tests/lua/script.lua: -------------------------------------------------------------------------------- 1 | require("my_module") 2 | 3 | print(hello()) -- Output: Hello from Rust! 4 | 5 | print(my_module.value) -- Output: 42 6 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_ffi/tests/node/index.js: -------------------------------------------------------------------------------- 1 | const { hello } = require('../target/debug/my-neon-example'); 2 | 3 | console.log(hello()); // Output: "hello from neon!" 4 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_ffi/tests/node/main.rs: -------------------------------------------------------------------------------- 1 | mod napi; 2 | mod neon; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_ffi/tests/objc/main.rs: -------------------------------------------------------------------------------- 1 | mod objc2; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_ffi/tests/python/main.rs: -------------------------------------------------------------------------------- 1 | mod pyo3; 2 | mod use_rust_from_python; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_ffi/tests/ruby/main.rs: -------------------------------------------------------------------------------- 1 | mod magnus; 2 | mod rutie; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_ffi/tests/ruby/script.rb: -------------------------------------------------------------------------------- 1 | require 'rust_module' 2 | 3 | puts RustClass.hello 4 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_procedural_macro_helpers/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_procedural_macro_helpers/tests/compile_macros/main.rs: -------------------------------------------------------------------------------- 1 | mod watt; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_profiling/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_profiling/src/main.rs: -------------------------------------------------------------------------------- 1 | mod memory_usage_analysis { 2 | pub mod dhat; 3 | } 4 | 5 | fn main() { 6 | memory_usage_analysis::dhat::main(); 7 | } 8 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_profiling/tests/benchmarking/main.rs: -------------------------------------------------------------------------------- 1 | mod criterion; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_testing/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_testing/tests/assertions/main.rs: -------------------------------------------------------------------------------- 1 | mod approx; 2 | mod tests_custom_message; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_testing/tests/code_coverage/main.rs: -------------------------------------------------------------------------------- 1 | // TODO Empty for now 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_testing/tests/fuzzing/main.rs: -------------------------------------------------------------------------------- 1 | mod afl; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_testing/tests/mocking/main.rs: -------------------------------------------------------------------------------- 1 | mod faux; 2 | mod mockall; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_testing/tests/property_based_testing/main.rs: -------------------------------------------------------------------------------- 1 | mod fake; 2 | mod proptest; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_testing/tests/test_runners/main.rs: -------------------------------------------------------------------------------- 1 | mod tests1; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_testing/tests/testing/main.rs: -------------------------------------------------------------------------------- 1 | mod insta; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/development_tools_testing/tests/testing/snapshots/testing__insta__format_user_snapshot.snap: -------------------------------------------------------------------------------- 1 | --- 2 | source: cats/development_tools_testing/tests/testing/insta.rs 3 | expression: formatted 4 | --- 5 | Name: Alice, Age: 30 6 | -------------------------------------------------------------------------------- /bk/crates/cats/email/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/embedded/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/embedded/tests/embassy/main.rs: -------------------------------------------------------------------------------- 1 | mod embassy; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/emulators/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/emulators/tests/emulators/emulator.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/752) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/emulators/tests/emulators/main.rs: -------------------------------------------------------------------------------- 1 | mod emulator; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/encoding/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/encoding/tests/binary_encoders/foo.capnp: -------------------------------------------------------------------------------- 1 | @0xb729500ee8baacd8; 2 | struct MyStruct { 3 | name @0 : Text; 4 | value @1 : Int32; 5 | } 6 | -------------------------------------------------------------------------------- /bk/crates/cats/encoding/tests/binary_encoders/main.rs: -------------------------------------------------------------------------------- 1 | mod bincode; 2 | // [review NOW](https://github.com/john-cd/rust_howto/issues/1234) 3 | #[cfg(target_os = "linux")] 4 | mod capnp; 5 | mod ciborium; 6 | mod flatbuffers; 7 | mod prost; 8 | mod protobuf; 9 | mod rmp_serde; 10 | -------------------------------------------------------------------------------- /bk/crates/cats/encoding/tests/binary_encoders/my_game.fbs: -------------------------------------------------------------------------------- 1 | namespace MyGame; 2 | 3 | table Monster { 4 | name: string; 5 | hp: int; 6 | } 7 | -------------------------------------------------------------------------------- /bk/crates/cats/encoding/tests/binary_encoders/person.proto: -------------------------------------------------------------------------------- 1 | syntax = "proto3"; 2 | 3 | package example; 4 | 5 | message Person { 6 | string name = 1; 7 | int32 age = 2; 8 | } 9 | -------------------------------------------------------------------------------- /bk/crates/cats/encoding/tests/csv/main.rs: -------------------------------------------------------------------------------- 1 | mod delimiter; 2 | mod filter; 3 | mod invalid; 4 | mod read; 5 | mod read1; 6 | mod serde_serialize; 7 | mod serialize; 8 | mod transform; 9 | -------------------------------------------------------------------------------- /bk/crates/cats/encoding/tests/no_external_schema_file/main.rs: -------------------------------------------------------------------------------- 1 | mod postcard; 2 | mod rkyv; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/encoding/tests/serde/main.rs: -------------------------------------------------------------------------------- 1 | mod json; 2 | mod monostate; 3 | mod serde; 4 | mod serde_ignored; 5 | mod serde_json; 6 | -------------------------------------------------------------------------------- /bk/crates/cats/encoding/tests/string_encoding/main.rs: -------------------------------------------------------------------------------- 1 | mod percent_encoding; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/encoding/tests/strings/main.rs: -------------------------------------------------------------------------------- 1 | mod base64; 2 | mod hex; 3 | mod percent_encode; 4 | mod url_encode; 5 | -------------------------------------------------------------------------------- /bk/crates/cats/encoding/tests/toml/main.rs: -------------------------------------------------------------------------------- 1 | mod toml; 2 | mod toml1; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/encoding/tests/typecasts/main.rs: -------------------------------------------------------------------------------- 1 | mod bytemuck; 2 | mod zerocopy; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/external_ffi_bindings/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/external_ffi_bindings/src/lib.rs: -------------------------------------------------------------------------------- 1 | // Empty 2 | -------------------------------------------------------------------------------- /bk/crates/cats/filesystem/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/filesystem/tests/directories/main.rs: -------------------------------------------------------------------------------- 1 | mod cwd; 2 | mod remove_dir_all; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/filesystem/tests/directory_traversal/main.rs: -------------------------------------------------------------------------------- 1 | mod duplicate_name; 2 | mod find_file; 3 | mod globset; 4 | mod ignore; 5 | mod ignore_case; 6 | mod loops; 7 | mod modified; 8 | mod png; 9 | mod sizes; 10 | mod skip_dot; 11 | -------------------------------------------------------------------------------- /bk/crates/cats/filesystem/tests/file_watching/main.rs: -------------------------------------------------------------------------------- 1 | mod notify; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/filesystem/tests/read_write/main.rs: -------------------------------------------------------------------------------- 1 | mod memmap2; 2 | mod read_file; 3 | mod same_file; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/filesystem/tests/tempfile/main.rs: -------------------------------------------------------------------------------- 1 | mod tempfile; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/filesystem/tests/user_directories/main.rs: -------------------------------------------------------------------------------- 1 | mod directories; 2 | mod dirs; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/finance/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/finance/tests/quant/main.rs: -------------------------------------------------------------------------------- 1 | mod rustquant; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/game_development/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/game_development/tests/game_development/game_development1.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/766) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/game_development/tests/game_development/main.rs: -------------------------------------------------------------------------------- 1 | mod game_development1; 2 | mod glam; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/game_engines/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/game_engines/tests/game_engines/main.rs: -------------------------------------------------------------------------------- 1 | mod bevy; 2 | mod fyrox; 3 | mod ggez; 4 | mod macroquad; 5 | -------------------------------------------------------------------------------- /bk/crates/cats/games/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/games/src/lib.rs: -------------------------------------------------------------------------------- 1 | // Empty 2 | -------------------------------------------------------------------------------- /bk/crates/cats/graphics/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/graphics/src/lib.rs: -------------------------------------------------------------------------------- 1 | // Empty 2 | -------------------------------------------------------------------------------- /bk/crates/cats/gui/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/gui/assets/Roboto-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/john-cd/rust_howto/8d198a7963c467d4ee4cd041ef4624d86e03e4eb/bk/crates/cats/gui/assets/Roboto-Regular.ttf -------------------------------------------------------------------------------- /bk/crates/cats/gui/assets/Roboto_Condensed-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/john-cd/rust_howto/8d198a7963c467d4ee4cd041ef4624d86e03e4eb/bk/crates/cats/gui/assets/Roboto_Condensed-Regular.ttf -------------------------------------------------------------------------------- /bk/crates/cats/gui/assets/Roboto_SemiCondensed-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/john-cd/rust_howto/8d198a7963c467d4ee4cd041ef4624d86e03e4eb/bk/crates/cats/gui/assets/Roboto_SemiCondensed-Regular.ttf -------------------------------------------------------------------------------- /bk/crates/cats/gui/examples/2d_renderers/main.rs: -------------------------------------------------------------------------------- 1 | mod femtovg; 2 | mod skia_safe; 3 | mod vello; 4 | mod vger; 5 | mod webrender; 6 | 7 | fn main() { 8 | // [review](https://github.com/john-cd/rust_howto/issues/1047) 9 | femtovg::main(); 10 | skia_safe::main(); 11 | vello::main(); 12 | vger::main(); 13 | webrender::main(); 14 | } 15 | -------------------------------------------------------------------------------- /bk/crates/cats/gui/examples/clipboard/main.rs: -------------------------------------------------------------------------------- 1 | mod arboard; 2 | 3 | fn main() { 4 | // [review](https://github.com/john-cd/rust_howto/issues/1048) 5 | arboard::main(); 6 | } 7 | -------------------------------------------------------------------------------- /bk/crates/cats/gui/examples/file_dialogs/main.rs: -------------------------------------------------------------------------------- 1 | mod rfd; 2 | 3 | fn main() { 4 | rfd::main(); 5 | } 6 | -------------------------------------------------------------------------------- /bk/crates/cats/gui/examples/gtk/main.rs: -------------------------------------------------------------------------------- 1 | mod gtk4; 2 | mod relm4; 3 | 4 | fn main() { 5 | gtk4::main(); 6 | relm4::main(); 7 | } 8 | -------------------------------------------------------------------------------- /bk/crates/cats/gui/examples/immediate_mode_gui/main.rs: -------------------------------------------------------------------------------- 1 | mod egui; 2 | 3 | fn main() -> Result<(), eframe::Error> { 4 | egui::main()?; 5 | Ok(()) 6 | } 7 | -------------------------------------------------------------------------------- /bk/crates/cats/gui/examples/retained_mode_gui/main.rs: -------------------------------------------------------------------------------- 1 | mod floem; 2 | mod iced; 3 | mod slint; 4 | mod vizia; 5 | mod xilem; 6 | 7 | fn main() -> anyhow::Result<()> { 8 | floem::main(); 9 | iced::main(); 10 | // slint::main()?; 11 | // vizia::main(); 12 | xilem::main(); 13 | Ok(()) 14 | } 15 | // [finish fix](https://github.com/john-cd/rust_howto/issues/1051) 16 | -------------------------------------------------------------------------------- /bk/crates/cats/gui/examples/text_layout/main.rs: -------------------------------------------------------------------------------- 1 | mod cosmic_text; 2 | mod parley; 3 | 4 | fn main() { 5 | cosmic_text::main(); 6 | parley::main(); 7 | } 8 | -------------------------------------------------------------------------------- /bk/crates/cats/gui/examples/ui_layout/main.rs: -------------------------------------------------------------------------------- 1 | mod morphorm; 2 | mod taffy; 3 | 4 | fn main() { 5 | morphorm::main(); 6 | taffy::main(); 7 | } 8 | -------------------------------------------------------------------------------- /bk/crates/cats/gui/examples/web/main.rs: -------------------------------------------------------------------------------- 1 | mod dioxus; 2 | mod tauri; 3 | 4 | fn main() { 5 | dioxus::main(); 6 | tauri::main(); 7 | } 8 | -------------------------------------------------------------------------------- /bk/crates/cats/gui/examples/window_creation/main.rs: -------------------------------------------------------------------------------- 1 | mod baseview; 2 | mod tao; 3 | mod winit; 4 | 5 | fn main() -> anyhow::Result<()> { 6 | baseview::main()?; 7 | tao::main(); 8 | winit::main()?; 9 | Ok(()) 10 | } 11 | -------------------------------------------------------------------------------- /bk/crates/cats/hardware_support/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/hardware_support/tests/processor/cpu_count.rs: -------------------------------------------------------------------------------- 1 | // ANCHOR: example 2 | /// This example demonstrates how to get the number of logical cores on the 3 | /// system. It uses the `num_cpus` crate. 4 | fn main() { 5 | println!("Number of logical cores is {}", num_cpus::get()); 6 | } 7 | // ANCHOR_END: example 8 | 9 | #[test] 10 | fn test() { 11 | main(); 12 | } 13 | -------------------------------------------------------------------------------- /bk/crates/cats/hardware_support/tests/processor/main.rs: -------------------------------------------------------------------------------- 1 | mod cpu_count; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/internationalization/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/internationalization/tests/internationalization/internationalization1.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/796) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/internationalization/tests/internationalization/main.rs: -------------------------------------------------------------------------------- 1 | mod internationalization1; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/localization/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/localization/tests/localization/localization1.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/797) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/localization/tests/localization/main.rs: -------------------------------------------------------------------------------- 1 | mod localization1; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/mathematics/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/mathematics/tests/additional_numeric_types/main.rs: -------------------------------------------------------------------------------- 1 | // #![allow(incomplete_features)] 2 | // #![feature(generic_const_exprs)] 3 | mod big_integers; 4 | mod num_bigint; 5 | mod num_traits; 6 | mod ordered_float; 7 | mod rug; 8 | mod rust_decimal; 9 | mod typenum; 10 | -------------------------------------------------------------------------------- /bk/crates/cats/mathematics/tests/complex_numbers/main.rs: -------------------------------------------------------------------------------- 1 | mod add_complex; 2 | mod create_complex; 3 | mod mathematical_functions; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/mathematics/tests/linear_algebra/main.rs: -------------------------------------------------------------------------------- 1 | mod add_matrices; 2 | mod deserialize_matrix; 3 | mod invert_matrix; 4 | mod multiply_matrices; 5 | mod multiply_scalar_vector_matrix; 6 | mod vector_comparison; 7 | mod vector_norm; 8 | -------------------------------------------------------------------------------- /bk/crates/cats/mathematics/tests/stats/main.rs: -------------------------------------------------------------------------------- 1 | mod central_tendency; 2 | mod central_tendency1; 3 | mod central_tendency2; 4 | mod standard_deviation; 5 | -------------------------------------------------------------------------------- /bk/crates/cats/mathematics/tests/trigonometry/main.rs: -------------------------------------------------------------------------------- 1 | mod latitude_longitude; 2 | mod side_length; 3 | mod tan_sin_cos; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/memory_management/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | 3 | ## NOTES 4 | 5 | A few tests use attributes that must be applied at the crate level. 6 | As such, they must be placed at the root of the `tests` folder. 7 | -------------------------------------------------------------------------------- /bk/crates/cats/memory_management/tests/lazy_initialization/main.rs: -------------------------------------------------------------------------------- 1 | mod lazy_constant; 2 | mod lazy_static; 3 | mod once_cell; 4 | mod once_cell2; 5 | -------------------------------------------------------------------------------- /bk/crates/cats/multimedia/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/multimedia/tests/multimedia/main.rs: -------------------------------------------------------------------------------- 1 | mod multimedia1; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/multimedia/tests/multimedia/multimedia1.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/805) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/multimedia_audio/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/multimedia_audio/tests/audio/audio.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/806) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/multimedia_audio/tests/audio/main.rs: -------------------------------------------------------------------------------- 1 | mod audio; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/multimedia_encoding/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/multimedia_encoding/tests/encoding/encoding.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/807) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/multimedia_encoding/tests/encoding/main.rs: -------------------------------------------------------------------------------- 1 | mod encoding; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/multimedia_images/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/multimedia_images/tests/images/images.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/808) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/multimedia_images/tests/images/main.rs: -------------------------------------------------------------------------------- 1 | mod images; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/multimedia_video/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/multimedia_video/tests/video/main.rs: -------------------------------------------------------------------------------- 1 | mod video; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/multimedia_video/tests/video/video.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/809) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/network_programming/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/network_programming/tests/reverse_proxy/main.rs: -------------------------------------------------------------------------------- 1 | mod ngrok; 2 | // Linux is Pingora's tier 1 environment and main focus. 3 | #[cfg(target_family = "unix")] 4 | mod pingora; 5 | -------------------------------------------------------------------------------- /bk/crates/cats/network_programming/tests/server/main.rs: -------------------------------------------------------------------------------- 1 | mod glommio; 2 | mod listen_unused; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/no_std/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/no_std/tests/no_std/main.rs: -------------------------------------------------------------------------------- 1 | mod no_std1; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/no_std/tests/no_std/no_std1.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/814) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/no_std_no_alloc/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/no_std_no_alloc/tests/no_alloc/main.rs: -------------------------------------------------------------------------------- 1 | mod no_alloc; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/no_std_no_alloc/tests/no_alloc/no_alloc.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/815) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/os/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/os/tests/external_commands/main.rs: -------------------------------------------------------------------------------- 1 | mod continuous; 2 | mod error_file; 3 | mod piped; 4 | mod process_output; 5 | mod read_env_variable; 6 | mod send_input; 7 | mod which; 8 | -------------------------------------------------------------------------------- /bk/crates/cats/os/tests/low_level_system_calls/main.rs: -------------------------------------------------------------------------------- 1 | mod libc; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/os_freebsd_apis/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/os_freebsd_apis/tests/freebsd/freebsd.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // #![cfg(target_os = "freebsd")] 5 | 6 | // fn main() {} 7 | 8 | // #[test] 9 | // #[ignore = "later"] 10 | // fn test() { 11 | // main(); 12 | // } 13 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/817) 14 | -------------------------------------------------------------------------------- /bk/crates/cats/os_freebsd_apis/tests/freebsd/main.rs: -------------------------------------------------------------------------------- 1 | mod freebsd; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/os_linux_apis/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/os_linux_apis/tests/linux/linux.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // #![cfg(target_os = "linux")] 5 | 6 | // fn main() {} 7 | 8 | // #[test] 9 | // #[ignore = "later"] 10 | // fn test() { 11 | // main(); 12 | // } 13 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/818) 14 | -------------------------------------------------------------------------------- /bk/crates/cats/os_linux_apis/tests/linux/main.rs: -------------------------------------------------------------------------------- 1 | mod linux; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/os_macos_apis/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/os_macos_apis/tests/macos/macos.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // #![cfg(target_os = "macos")] 5 | 6 | // fn main() {} 7 | 8 | // #[test] 9 | // #[ignore = "later"] 10 | // fn test() { 11 | // main(); 12 | // } 13 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/819) 14 | -------------------------------------------------------------------------------- /bk/crates/cats/os_macos_apis/tests/macos/main.rs: -------------------------------------------------------------------------------- 1 | mod macos; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/os_unix_apis/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/os_unix_apis/tests/unix/main.rs: -------------------------------------------------------------------------------- 1 | mod nix; 2 | mod rustix; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/os_windows_apis/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/os_windows_apis/tests/windows/main.rs: -------------------------------------------------------------------------------- 1 | mod winapi; 2 | mod windows; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/parser_implementations/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/parser_implementations/tests/html/main.rs: -------------------------------------------------------------------------------- 1 | mod cssparser; 2 | mod html5ever; 3 | mod tl; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/parser_implementations/tests/ini/main.rs: -------------------------------------------------------------------------------- 1 | mod rust_ini; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/parser_implementations/tests/javascript/main.rs: -------------------------------------------------------------------------------- 1 | mod swc_ecma_parser; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/parser_implementations/tests/json/main.rs: -------------------------------------------------------------------------------- 1 | mod json5; 2 | mod serde_json; 3 | mod simd_json; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/parser_implementations/tests/markdown/main.rs: -------------------------------------------------------------------------------- 1 | mod comrak; 2 | mod markdown; 3 | mod pulldown_cmark; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/parser_implementations/tests/programming_languages/main.rs: -------------------------------------------------------------------------------- 1 | mod sqlparser; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/parser_implementations/tests/toml/main.rs: -------------------------------------------------------------------------------- 1 | mod basic_toml; 2 | mod toml; 3 | mod toml_edit; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/parser_implementations/tests/xml/main.rs: -------------------------------------------------------------------------------- 1 | mod quick_xml; 2 | mod roxmltree; 3 | mod xml; 4 | mod xml5ever; 5 | mod xmlparser; 6 | -------------------------------------------------------------------------------- /bk/crates/cats/parser_implementations/tests/yaml/main.rs: -------------------------------------------------------------------------------- 1 | mod serde_yml; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/parsing/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/parsing/tests/parsing/main.rs: -------------------------------------------------------------------------------- 1 | mod nom; 2 | mod tree_sitter; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/parsing/tests/pest/grammar.pest: -------------------------------------------------------------------------------- 1 | expression = { term ~ (operator ~ term)* } // ~ matches the sequence 2 | term = { number } 3 | operator = { "+" | "-" | "*" | "/" } // | matches one of the four strings (either or) 4 | number = { ASCII_DIGIT+ } // + matches one or more times 5 | 6 | // This rule starts with a _ and is therefore silent 7 | // (it produces no tokens or error reports) 8 | WHITESPACE = _{ " " | "\t" | "\r" | "\n" } 9 | -------------------------------------------------------------------------------- /bk/crates/cats/parsing/tests/pest/main.rs: -------------------------------------------------------------------------------- 1 | mod pest; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/rendering/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/rendering/tests/2d_raster_graphics/main.rs: -------------------------------------------------------------------------------- 1 | mod render; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/rendering/tests/2d_raster_graphics/render.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/828) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/rendering/tests/2d_vector_graphics/main.rs: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /bk/crates/cats/rendering/tests/3d_renderers/main.rs: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /bk/crates/cats/rendering/tests/svg_rendering/main.rs: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /bk/crates/cats/rendering/tests/text_rendering/main.rs: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /bk/crates/cats/rendering_data_formats/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/rendering_data_formats/tests/data_formats/data_formats.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/829) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/rendering_data_formats/tests/data_formats/main.rs: -------------------------------------------------------------------------------- 1 | mod data_formats; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/rendering_engine/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/rendering_engine/tests/rendering_engines/main.rs: -------------------------------------------------------------------------------- 1 | mod render; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/rendering_engine/tests/rendering_engines/render.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/830) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/rendering_graphics_api/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/rendering_graphics_api/tests/gpu_abstraction_layers/main.rs: -------------------------------------------------------------------------------- 1 | mod wgpu; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/rendering_graphics_api/tests/native_graphics_apis/graphics.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/831) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/rendering_graphics_api/tests/native_graphics_apis/main.rs: -------------------------------------------------------------------------------- 1 | mod graphics; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/rendering_graphics_api/tests/opengl/main.rs: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /bk/crates/cats/rendering_graphics_api/tests/shaders/main.rs: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /bk/crates/cats/rendering_graphics_api/tests/vulkan/main.rs: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /bk/crates/cats/rust_patterns/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/rust_patterns/tests/builder_pattern/main.rs: -------------------------------------------------------------------------------- 1 | mod builder_pattern; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/rust_patterns/tests/creational_patterns/main.rs: -------------------------------------------------------------------------------- 1 | mod abstract_factory; 2 | mod factory; 3 | mod singleton; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/rust_patterns/tests/error/main.rs: -------------------------------------------------------------------------------- 1 | mod anyhow; 2 | mod backtrace; 3 | mod color_eyre; 4 | mod error_handling; 5 | mod miette; 6 | mod panic; 7 | mod question_mark; 8 | mod question_mark2; 9 | mod retain; 10 | mod thiserror; 11 | mod thiserror2; 12 | mod unwrap; 13 | mod unwrap_or_else; 14 | -------------------------------------------------------------------------------- /bk/crates/cats/rust_patterns/tests/error/panic.rs: -------------------------------------------------------------------------------- 1 | // ANCHOR: example 2 | /// This example demonstrates a simple panic. 3 | /// When executed, it will cause the program to terminate abruptly. 4 | fn main() { 5 | panic!("Crash and burn"); 6 | } 7 | // ANCHOR_END: example 8 | 9 | #[should_panic] 10 | #[test] 11 | fn test() { 12 | main(); 13 | } 14 | -------------------------------------------------------------------------------- /bk/crates/cats/rust_patterns/tests/functional_programming/main.rs: -------------------------------------------------------------------------------- 1 | mod either; 2 | mod frunk; 3 | mod im; 4 | mod itertools; 5 | mod rpds; 6 | -------------------------------------------------------------------------------- /bk/crates/cats/rust_patterns/tests/rust_specific_patterns/main.rs: -------------------------------------------------------------------------------- 1 | mod dyn_clone; 2 | mod pin_project; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/science/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/science/tests/ml/main.rs: -------------------------------------------------------------------------------- 1 | mod candle; 2 | mod linfa; 3 | mod smartcore; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/science_geo/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/science_geo/tests/geo/geo.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/839) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/science_geo/tests/geo/main.rs: -------------------------------------------------------------------------------- 1 | mod geo; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/science_neuroscience/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/science_neuroscience/tests/neuroscience/main.rs: -------------------------------------------------------------------------------- 1 | mod neuro; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/science_neuroscience/tests/neuroscience/neuro.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/840) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/science_robotics/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/science_robotics/tests/artificial_intelligence/main.rs: -------------------------------------------------------------------------------- 1 | mod bonsai_bt; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/science_robotics/tests/control_systems/main.rs: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /bk/crates/cats/science_robotics/tests/hardware_integration/main.rs: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /bk/crates/cats/science_robotics/tests/perception_and_sensors/main.rs: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /bk/crates/cats/science_robotics/tests/robot_operating_systems/main.rs: -------------------------------------------------------------------------------- 1 | mod robotics; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/science_robotics/tests/robot_operating_systems/robotics.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/844) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/science_robotics/tests/robotics_frameworks/main.rs: -------------------------------------------------------------------------------- 1 | mod openrr; 2 | mod zenoh; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/science_robotics/tests/simulation_visualization/main.rs: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /bk/crates/cats/simulation/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/simulation/tests/physics_engines/main.rs: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /bk/crates/cats/simulation/tests/simulation/main.rs: -------------------------------------------------------------------------------- 1 | mod simulation1; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/simulation/tests/simulation/simulation1.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER](https://github.com/john-cd/rust_howto/issues/846) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/template_engine/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/template_engine/tests/tera/main.rs: -------------------------------------------------------------------------------- 1 | mod tera; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/template_engine/tests/tera/templates/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | {{ title }} 9 | 10 | 11 | 12 |

{{ heading }}

13 |

{{ content }}

14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /bk/crates/cats/template_engine/tests/tinytemplate/main.rs: -------------------------------------------------------------------------------- 1 | mod tinytemplate; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/text_processing/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/text_processing/tests/diffing/main.rs: -------------------------------------------------------------------------------- 1 | mod diff; 2 | mod similar; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/text_processing/tests/other_strings/main.rs: -------------------------------------------------------------------------------- 1 | mod bstr; 2 | mod cstring; 3 | mod osstring; 4 | mod ustr; 5 | -------------------------------------------------------------------------------- /bk/crates/cats/text_processing/tests/regex/main.rs: -------------------------------------------------------------------------------- 1 | mod email; 2 | mod fancy_regex; 3 | mod filter_log; 4 | mod hashtags; 5 | mod phone; 6 | mod regex; 7 | mod replace; 8 | -------------------------------------------------------------------------------- /bk/crates/cats/text_processing/tests/string_concat/main.rs: -------------------------------------------------------------------------------- 1 | mod string_concat; 2 | mod string_concat2; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/text_processing/tests/string_manipulation/main.rs: -------------------------------------------------------------------------------- 1 | mod heck; 2 | mod indoc; 3 | mod textwrap; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/text_processing/tests/string_parsing/main.rs: -------------------------------------------------------------------------------- 1 | mod from_str; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/text_processing/tests/string_search/main.rs: -------------------------------------------------------------------------------- 1 | mod aho_corasick; 2 | mod fuzzy_matcher; 3 | mod memchr; 4 | mod strsim; 5 | -------------------------------------------------------------------------------- /bk/crates/cats/text_processing/tests/unicode/main.rs: -------------------------------------------------------------------------------- 1 | mod graphemes; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/value_formatting/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/value_formatting/tests/number_formatting/main.rs: -------------------------------------------------------------------------------- 1 | mod ryu; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/virtualization/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/virtualization/tests/virtualization/main.rs: -------------------------------------------------------------------------------- 1 | mod virtualization1; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/virtualization/tests/virtualization/virtualization1.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write LATER; cover WASMI cargo add wasmi](https://github.com/john-cd/rust_howto/issues/852) 12 | -------------------------------------------------------------------------------- /bk/crates/cats/visualization/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/visualization/tests/visualization/main.rs: -------------------------------------------------------------------------------- 1 | mod plotly; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/wasm/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/wasm/tests/interfacing_with_javascript/main.rs: -------------------------------------------------------------------------------- 1 | // Empty 2 | -------------------------------------------------------------------------------- /bk/crates/cats/wasm/tests/wasm_development/main.rs: -------------------------------------------------------------------------------- 1 | // TODO 2 | -------------------------------------------------------------------------------- /bk/crates/cats/wasm/tests/wasm_standalone_runtimes/main.rs: -------------------------------------------------------------------------------- 1 | mod wasmer; 2 | mod wasmtime; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/wasm/tests/yew/main.rs: -------------------------------------------------------------------------------- 1 | mod yew; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/web_programming/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/web_programming/tests/http_types_and_interfaces/main.rs: -------------------------------------------------------------------------------- 1 | mod http; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/web_programming/tests/mime/main.rs: -------------------------------------------------------------------------------- 1 | mod filename; 2 | mod request; 3 | mod string; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/web_programming/tests/scraping/main.rs: -------------------------------------------------------------------------------- 1 | mod broken; 2 | mod extract_links; 3 | mod unique; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/web_programming/tests/url/main.rs: -------------------------------------------------------------------------------- 1 | mod base; 2 | mod fragment; 3 | mod new; 4 | mod origin; 5 | mod origin1; 6 | mod parse; 7 | -------------------------------------------------------------------------------- /bk/crates/cats/web_programming_http_client/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/web_programming_http_client/tests/apis/main.rs: -------------------------------------------------------------------------------- 1 | mod paginated; 2 | mod rate_limited; 3 | mod rest_get; 4 | mod rest_head; 5 | mod rest_post; 6 | -------------------------------------------------------------------------------- /bk/crates/cats/web_programming_http_client/tests/download/main.rs: -------------------------------------------------------------------------------- 1 | mod download; 2 | mod partial; 3 | mod post_file; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/web_programming_http_client/tests/http_clients/main.rs: -------------------------------------------------------------------------------- 1 | mod hyper; 2 | mod ureq; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/web_programming_http_client/tests/requests/main.rs: -------------------------------------------------------------------------------- 1 | mod get; 2 | mod get1; 3 | mod header; 4 | -------------------------------------------------------------------------------- /bk/crates/cats/web_programming_http_server/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/cats/web_programming_http_server/examples/loco/config/app.yaml: -------------------------------------------------------------------------------- 1 | database: 2 | url: postgresql://user:password@host:port/database_name 3 | -------------------------------------------------------------------------------- /bk/crates/cats/web_programming_http_server/examples/loco/migrations/20231027120000_create_users/down.sql: -------------------------------------------------------------------------------- 1 | -- migrations/20231027120000_create_users/down.sql 2 | DROP TABLE users; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/web_programming_http_server/examples/loco/migrations/20231027120000_create_users/up.sql: -------------------------------------------------------------------------------- 1 | -- migrations/20231027120000_create_users/up.sql 2 | CREATE TABLE users ( 3 | id BIGSERIAL PRIMARY KEY, 4 | name TEXT NOT NULL 5 | ); 6 | 7 | 8 | -------------------------------------------------------------------------------- /bk/crates/cats/web_programming_http_server/proto/helloworld.proto: -------------------------------------------------------------------------------- 1 | syntax = "proto3"; 2 | 3 | package helloworld; 4 | 5 | service Greeter { 6 | rpc SayHello (HelloRequest) returns (HelloReply); 7 | } 8 | 9 | message HelloRequest { 10 | string name = 1; 11 | } 12 | 13 | message HelloReply { 14 | string message = 1; 15 | } 16 | -------------------------------------------------------------------------------- /bk/crates/cats/web_programming_http_server/tests/grpc/main.rs: -------------------------------------------------------------------------------- 1 | mod tonic; 2 | -------------------------------------------------------------------------------- /bk/crates/cats/web_programming_http_server/tests/middleware/main.rs: -------------------------------------------------------------------------------- 1 | mod cors; 2 | mod tower_http; 3 | -------------------------------------------------------------------------------- /bk/crates/cats/web_programming_websocket/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/code_organization/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/code_organization/tests/modules/main.rs: -------------------------------------------------------------------------------- 1 | mod module_visibility; 2 | -------------------------------------------------------------------------------- /bk/crates/code_organization/tests/use/main.rs: -------------------------------------------------------------------------------- 1 | mod pub_use; 2 | mod use1; 3 | mod use2; 4 | mod use3; 5 | mod use_external_crate; 6 | mod use_shortcuts; 7 | -------------------------------------------------------------------------------- /bk/crates/code_organization/tests/visibility/main.rs: -------------------------------------------------------------------------------- 1 | mod private_access; 2 | mod pub_keyword; 3 | mod public_access; 4 | mod public_by_default; 5 | mod visibility_external_code; 6 | mod visibility_pub_crate; 7 | mod visibility_scope; 8 | -------------------------------------------------------------------------------- /bk/crates/language/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/language/tests/attributes/main.rs: -------------------------------------------------------------------------------- 1 | mod allow_dead_code; 2 | mod attributes_deprecated; 3 | mod attributes_derive; 4 | mod attributes_early_development; 5 | mod attributes_must_use; 6 | mod attributes_production; 7 | mod cfg_if; 8 | mod conditional_compilation; 9 | -------------------------------------------------------------------------------- /bk/crates/language/tests/closures/main.rs: -------------------------------------------------------------------------------- 1 | mod closures; 2 | mod closures_as_input_parameters; 3 | mod closures_capture; 4 | mod closures_move; 5 | mod closures_with_type_annotations; 6 | -------------------------------------------------------------------------------- /bk/crates/language/tests/constants_and_statics/main.rs: -------------------------------------------------------------------------------- 1 | mod constants; 2 | mod static_mut; 3 | mod statics; 4 | -------------------------------------------------------------------------------- /bk/crates/language/tests/control_flow/main.rs: -------------------------------------------------------------------------------- 1 | mod for1; 2 | mod if_else; 3 | mod labeled_block_expression; 4 | mod loop1; 5 | mod while1; 6 | -------------------------------------------------------------------------------- /bk/crates/language/tests/data_types/main.rs: -------------------------------------------------------------------------------- 1 | mod compound_data_types; 2 | mod scalar_data_types; 3 | mod string_data_types; 4 | -------------------------------------------------------------------------------- /bk/crates/language/tests/entrypoint/main.rs: -------------------------------------------------------------------------------- 1 | mod async_main; 2 | mod main_fn; 3 | mod main_fn_with_result; 4 | -------------------------------------------------------------------------------- /bk/crates/language/tests/entrypoint/main_fn.rs: -------------------------------------------------------------------------------- 1 | // ANCHOR: example 2 | // `main` takes no parameters and, in this case, 3 | // implicitly returns the "unit type" (), 4 | // similar to 'void' in C/C++/Java. 5 | fn main() { 6 | println!("Hello, world!"); 7 | } 8 | // ANCHOR_END: example 9 | 10 | #[test] 11 | fn test() { 12 | main(); 13 | } 14 | -------------------------------------------------------------------------------- /bk/crates/language/tests/enums/main.rs: -------------------------------------------------------------------------------- 1 | mod enums; 2 | mod strum; 3 | -------------------------------------------------------------------------------- /bk/crates/language/tests/functions/main.rs: -------------------------------------------------------------------------------- 1 | mod diverging_functions; 2 | mod function_pointers; 3 | mod functions; 4 | mod generic_functions; 5 | mod generic_functions2; 6 | mod return_reference; 7 | -------------------------------------------------------------------------------- /bk/crates/language/tests/generics/main.rs: -------------------------------------------------------------------------------- 1 | mod generic_function; 2 | mod generic_lifetime; 3 | mod generic_structs; 4 | mod generics; 5 | -------------------------------------------------------------------------------- /bk/crates/language/tests/iterators/main.rs: -------------------------------------------------------------------------------- 1 | mod consume_intoiterator; 2 | mod implement_intoiterator; 3 | mod iterator_adapters; 4 | mod iterators; 5 | mod return_iterator; 6 | mod simple_iterators; 7 | -------------------------------------------------------------------------------- /bk/crates/language/tests/lifetimes/main.rs: -------------------------------------------------------------------------------- 1 | mod lifetime_parameter_function; 2 | mod lifetime_parameter_struct; 3 | mod lifetime_parameters; 4 | mod self_referential_struct; 5 | mod static_lifetime; 6 | -------------------------------------------------------------------------------- /bk/crates/language/tests/macros/main.rs: -------------------------------------------------------------------------------- 1 | mod macros; 2 | -------------------------------------------------------------------------------- /bk/crates/language/tests/match/main.rs: -------------------------------------------------------------------------------- 1 | mod if_let; 2 | mod match1; 3 | mod match2; 4 | mod while_let; 5 | -------------------------------------------------------------------------------- /bk/crates/language/tests/ownership_borrowing/main.rs: -------------------------------------------------------------------------------- 1 | mod borrowing_function; 2 | mod borrowing_function_mutable; 3 | mod borrowing_immutable; 4 | mod clone; 5 | mod copy; 6 | mod move1; 7 | mod move_function; 8 | mod read_write_lock; 9 | mod scope; 10 | -------------------------------------------------------------------------------- /bk/crates/language/tests/slices/main.rs: -------------------------------------------------------------------------------- 1 | mod slice_as_argument; 2 | mod slices; 3 | mod string_slices; 4 | -------------------------------------------------------------------------------- /bk/crates/language/tests/structs/main.rs: -------------------------------------------------------------------------------- 1 | mod common_traits; 2 | mod struct_constant; 3 | mod struct_fields; 4 | mod struct_impl; 5 | mod struct_init; 6 | mod struct_trait; 7 | mod struct_update; 8 | mod structs; 9 | mod tuple_structs; 10 | -------------------------------------------------------------------------------- /bk/crates/language/tests/structs/struct_constant.rs: -------------------------------------------------------------------------------- 1 | // ANCHOR: example 2 | struct MyToken; 3 | 4 | impl MyToken { 5 | // Inherent implementations can contain associated constants, 6 | // in addition to associated functions or methods. 7 | const ID: i32 = 1; 8 | } 9 | 10 | fn main() { 11 | println!("ID: {}", MyToken::ID); 12 | } 13 | // ANCHOR_END: example 14 | 15 | #[test] 16 | fn test() { 17 | main(); 18 | } 19 | -------------------------------------------------------------------------------- /bk/crates/language/tests/trait_objects/main.rs: -------------------------------------------------------------------------------- 1 | mod dyn_compat; 2 | mod dyn_supertraits; 3 | mod impl_trait; 4 | mod trait_objects; 5 | -------------------------------------------------------------------------------- /bk/crates/language/tests/traits/main.rs: -------------------------------------------------------------------------------- 1 | mod associated_types; 2 | mod blanket_implementations; 3 | mod const_in_traits; 4 | mod extend_external_type; 5 | mod generic_traits; 6 | mod multiple_traits; 7 | mod newtype; 8 | mod rpit; 9 | mod sealed_trait_pattern; 10 | mod supertraits; 11 | mod trait_bounds; 12 | mod trait_default_implementation; 13 | mod traits; 14 | mod traits_as_parameters; 15 | -------------------------------------------------------------------------------- /bk/crates/language/tests/variables/main.rs: -------------------------------------------------------------------------------- 1 | mod destructuring; 2 | mod shadowing; 3 | mod vars; 4 | mod vars2; 5 | -------------------------------------------------------------------------------- /bk/crates/other/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/other/tests/architecture/main.rs: -------------------------------------------------------------------------------- 1 | mod cqrs; 2 | mod di; 3 | mod layered_architecture; 4 | mod repository; 5 | mod state_machine; 6 | -------------------------------------------------------------------------------- /bk/crates/other/tests/cloud/mod.rs: -------------------------------------------------------------------------------- 1 | mod aws_lambda; 2 | mod aws_sdk; 3 | mod shuttle; 4 | -------------------------------------------------------------------------------- /bk/crates/other/tests/cloud/template.yaml: -------------------------------------------------------------------------------- 1 | AWSTemplateFormatVersion: '2010-09-09' 2 | Transform: AWS::Serverless-2016-10-31 3 | Resources: 4 | MyLambdaFunction: 5 | Type: AWS::Serverless::Function 6 | Properties: 7 | Handler: bootstrap 8 | Runtime: provided.al2 9 | CodeUri: ./target/x86_64-unknown-linux-musl/release/ 10 | MemorySize: 128 11 | Timeout: 3 12 | -------------------------------------------------------------------------------- /bk/crates/other/tests/cross_platform/mod.rs: -------------------------------------------------------------------------------- 1 | mod crux; 2 | -------------------------------------------------------------------------------- /bk/crates/other/tests/data_processing/mod.rs: -------------------------------------------------------------------------------- 1 | mod arrow; 2 | mod datafusion; 3 | mod polars; 4 | -------------------------------------------------------------------------------- /bk/crates/other/tests/gpu/mod.rs: -------------------------------------------------------------------------------- 1 | mod rust_gpu; 2 | -------------------------------------------------------------------------------- /bk/crates/other/tests/gpu/rust_gpu.rs: -------------------------------------------------------------------------------- 1 | // // ANCHOR: example 2 | // // COMING SOON 3 | // // ANCHOR_END: example 4 | // fn main() {} 5 | 6 | // #[test] 7 | // #[ignore = "later"] 8 | // fn test() { 9 | // main(); 10 | // } 11 | // // [write; need to review - see gpu.md LATER](https://github.com/john-cd/rust_howto/issues/886) 12 | -------------------------------------------------------------------------------- /bk/crates/other/tests/scripting/mod.rs: -------------------------------------------------------------------------------- 1 | mod rhai; 2 | -------------------------------------------------------------------------------- /bk/crates/other/tests/written_in_rust/mod.rs: -------------------------------------------------------------------------------- 1 | // None 2 | -------------------------------------------------------------------------------- /bk/crates/standard_library/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | -------------------------------------------------------------------------------- /bk/crates/standard_library/tests/NOTES.md: -------------------------------------------------------------------------------- 1 | # NOTES 2 | 3 | A few tests use attributes that must be applied at the crate level. 4 | As such, they must be placed at the root of the `tests` folder. 5 | -------------------------------------------------------------------------------- /bk/crates/standard_library/tests/arc/main.rs: -------------------------------------------------------------------------------- 1 | mod arc_make_mut; 2 | -------------------------------------------------------------------------------- /bk/crates/standard_library/tests/asref/main.rs: -------------------------------------------------------------------------------- 1 | mod asref; 2 | mod option_asref; 3 | mod smart_pointer_asref; 4 | -------------------------------------------------------------------------------- /bk/crates/standard_library/tests/box/main.rs: -------------------------------------------------------------------------------- 1 | mod box_basics; 2 | mod box_deref; 3 | mod box_dst; 4 | mod box_recursive; 5 | mod box_trait_objects; 6 | -------------------------------------------------------------------------------- /bk/crates/standard_library/tests/cow/main.rs: -------------------------------------------------------------------------------- 1 | mod cow_alternatives; 2 | mod cow_as_function_param; 3 | mod cow_to_borrowed_owned; 4 | mod function_returning_cow; 5 | mod into_cow; 6 | mod modify_cow_in_place; 7 | -------------------------------------------------------------------------------- /bk/crates/standard_library/tests/derive/main.rs: -------------------------------------------------------------------------------- 1 | mod derive; 2 | mod derive_more; 3 | -------------------------------------------------------------------------------- /bk/crates/standard_library/tests/option/main.rs: -------------------------------------------------------------------------------- 1 | mod option_combinators; 2 | mod option_match; 3 | mod option_question_mark; 4 | mod option_ref; 5 | mod option_unwrap; 6 | mod options1; 7 | mod options2; 8 | -------------------------------------------------------------------------------- /bk/crates/standard_library/tests/result/main.rs: -------------------------------------------------------------------------------- 1 | mod result; 2 | mod result2; 3 | mod result3; 4 | -------------------------------------------------------------------------------- /bk/crates/standard_library/tests/smart_pointers/main.rs: -------------------------------------------------------------------------------- 1 | mod cell; 2 | mod rc; 3 | mod refcell; 4 | -------------------------------------------------------------------------------- /bk/drafts/categories/asynchronous/async_traits.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Async Traits][ex-asynchronous-async-traits] | [![async-trait][c-async_trait-badge]][c-async_trait] | [![cat-asynchronous][cat-asynchronous-badge]][cat-asynchronous] | 4 | -------------------------------------------------------------------------------- /bk/drafts/categories/asynchronous/async_utilities.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Visualize the Structure of Asynchronous Tasks and Their Dependencies][ex-asynchronous-utilities] | [![await-tree][c-await_tree-badge]][c-await_tree] | [![cat-concurrency][cat-concurrency-badge]][cat-concurrency] | 4 | -------------------------------------------------------------------------------- /bk/drafts/categories/asynchronous/streams.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Streams][ex-asynchronous-streams] | [![futures][c-futures-badge]][c-futures] | [![cat-asynchronous][cat-asynchronous-badge]][cat-asynchronous] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/drafts/categories/authentication/basic_authentication.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Perform a Basic HTTP Authentication][ex-authentication-basic-authentication] | [![reqwest][c-reqwest-badge]][c-reqwest] | [![cat-authentication][cat-authentication-badge]][cat-authentication] [![cat-network-programming][cat-network-programming-badge]][cat-network-programming] | 4 | -------------------------------------------------------------------------------- /bk/drafts/categories/authentication/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-authentication-basic-authentication]: basic_authentication.md#basic-authentication 2 | -------------------------------------------------------------------------------- /bk/drafts/categories/caching/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-caching-cached]: in_memory_cache.md#cached 2 | [ex-caching-lru-cache]: in_memory_cache.md#lru-cache 3 | [ex-caching-moka]: in_memory_cache.md#moka 4 | [p-caching]: index.md 5 | -------------------------------------------------------------------------------- /bk/drafts/categories/command-line-interface/tui.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Build Complex TUI][ex-command-line-interface-ratatui] | [![ratatui][c-ratatui-badge]][c-ratatui] | [![cat-command-line-interface][cat-command-line-interface-badge]][cat-command-line-interface] | 4 | 5 | 7 | -------------------------------------------------------------------------------- /bk/drafts/categories/command-line-utilities/networking_cli.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`gping`][ex-command-line-utilities-gping] | [![gping][c-gping-badge]][c-gping] | [![cat-command-line-utilities][cat-command-line-utilities-badge]][cat-command-line-utilities] | 4 | -------------------------------------------------------------------------------- /bk/drafts/categories/concurrency/explicit_threads.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Use spawn, join][ex-concurrency-spawn-join] | [![std][c-std-badge]][c-std] | [![cat-concurrency][cat-concurrency-badge]][cat-concurrency] | 4 | | [Use Scoped Threads][ex-concurrency-scoped-threads] | [![std][c-std-badge]][c-std] | [![cat-concurrency][cat-concurrency-badge]][cat-concurrency] | 5 | -------------------------------------------------------------------------------- /bk/drafts/categories/cryptography/cryptography_utilities.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`subtle`][ex-cryptography-subtle] | [![subtle][c-subtle-badge]][c-subtle] | [![cat-cryptography][cat-cryptography-badge]][cat-cryptography] | 4 | | [`zeroize`][ex-cryptography-zeroize] | [![zeroize][c-zeroize-badge]][c-zeroize] | [![cat-cryptography][cat-cryptography-badge]][cat-cryptography] | 5 | -------------------------------------------------------------------------------- /bk/drafts/categories/cryptography/encryption.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Use the RSA Algorithm][ex-cryptography-rsa] | [![rsa][c-rsa-badge]][c-rsa] | [![cat-cryptography][cat-cryptography-badge]][cat-cryptography] | 4 | 5 | 9 | -------------------------------------------------------------------------------- /bk/drafts/categories/cryptography/hmac.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Sign and Verify a Message with a HMAC Digest][ex-cryptography-hmac] | [![ring][c-ring-badge]][c-ring] | [![cat-cryptography][cat-cryptography-badge]][cat-cryptography] | 4 | -------------------------------------------------------------------------------- /bk/drafts/categories/cryptography/tls.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`rustls`][ex-cryptography-rustls] | [![rustls][c-rustls-badge]][c-rustls] | [![cat-cryptography][cat-cryptography-badge]][cat-cryptography] | 4 | | [`native-tls`][ex-cryptography-native-tls] | [![native-tls][c-native_tls-badge]][c-native_tls] | [![cat-cryptography][cat-cryptography-badge]][cat-cryptography] | 5 | -------------------------------------------------------------------------------- /bk/drafts/categories/data-structures/binaryheap.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`priority-queue`][ex-data-structures-priority-queue] | [![std][c-std-badge]][c-std] | [![cat-data-structures][cat-data-structures-badge]][cat-data-structures] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/drafts/categories/data-structures/graph.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Manipulate Graphs with `petgraph`][ex-data-structures-petgraph] | [![petgraph][c-petgraph-badge]][c-petgraph] | [![cat-data-structures][cat-data-structures-badge]][cat-data-structures] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/drafts/categories/data-structures/heapless.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Heapless][ex-data-structures-heapless] | [![std][c-std-badge]][c-std] | [![cat-data-structures][cat-data-structures-badge]][cat-data-structures] | 4 | -------------------------------------------------------------------------------- /bk/drafts/categories/data-structures/linkedlist.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Stored Data in a Linked List][ex-data-structures-linkedlist] | [![std][c-std-badge]][c-std] | [![cat-data-structures][cat-data-structures-badge]][cat-data-structures] | 4 | 5 | 7 | -------------------------------------------------------------------------------- /bk/drafts/categories/data-structures/strings.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | 2 | |---|---| 3 | | [`String` and `&str`][ex-data-structures-string] | [![std][c-std-badge]][c-std] | 4 | | [Print and Format Strings][ex-data-structures-placeholders] | [![std][c-std-badge]][c-std] | 5 | | [Concatenate Strings][ex-data-structures-string-concatenation] | [![std][c-std-badge]][c-std] | 6 | -------------------------------------------------------------------------------- /bk/drafts/categories/data-structures/uuid.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Generate and Parse UUIDs][ex-data-structures-generate-parse-uuid] | [![uuid][c-uuid-badge]][c-uuid] | [![cat-data-structures][cat-data-structures-badge]][cat-data-structures] | 4 | -------------------------------------------------------------------------------- /bk/drafts/categories/data-structures/vector.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | 2 | |---|---| 3 | | [Store Homogeneous Data in a Contiguous, Growable Array: `Vec`][ex-data-structures-vec] | [![std][c-std-badge]][c-std] | 4 | -------------------------------------------------------------------------------- /bk/drafts/categories/database/amqp.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Connect to RabbitMQ with `lapin`][ex-database-lapin] | [![lapin][c-lapin-badge]][c-lapin] | [![cat-database][cat-database-badge]][cat-database] | 4 | -------------------------------------------------------------------------------- /bk/drafts/categories/database/connection_pool.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Create a Connection Pool][ex-database-connection-pool] | [![deadpool][c-deadpool-badge]][c-deadpool] | [![cat-database][cat-database-badge]][cat-database] | 4 | -------------------------------------------------------------------------------- /bk/drafts/categories/database/key_value_stores.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`heed`][ex-database-heed] | [![heed][c-heed-badge]][c-heed] | [![cat-database][cat-database-badge]][cat-database] | 4 | | [`rocksdb`][ex-database-rocksdb] | [![rocksdb][c-rocksdb-badge]][c-rocksdb] | [![cat-database][cat-database-badge]][cat-database] | 5 | -------------------------------------------------------------------------------- /bk/drafts/categories/database/mssql.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`tiberius`][ex-database-tiberius] | [![tiberius][c-tiberius-badge]][c-tiberius] | [![cat-database][cat-database-badge]][cat-database] | 4 | -------------------------------------------------------------------------------- /bk/drafts/categories/development-tools/cargo/package_layout.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Package Layout][ex-cargo-package-layout] | [![cargo][c-cargo-badge]][c-cargo] | [![cat-development-tools][cat-development-tools-badge]][cat-development-tools] | 4 | 5 | 7 | -------------------------------------------------------------------------------- /bk/drafts/categories/development-tools/cross-compilation/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-cross-compilation-cross-compilation]: cross_compilation.md#cross-compilation 2 | [ex-cross-compilation-cross-compile-with-cargo]: cross_compilation.md#cross-compile-with-cargo 3 | [p-attributes]: ../../../language/attributes.md 4 | [p-cargo]: ../cargo/cargo.md 5 | -------------------------------------------------------------------------------- /bk/drafts/categories/development-tools/documentation/badges.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Badges][ex-documentation-badges] | [shield.io][shield-io-website]⮳ | [![cat-development-tools][cat-development-tools-badge]][cat-development-tools] | 4 | -------------------------------------------------------------------------------- /bk/drafts/categories/development-tools/installation/rustup.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Install and Manage Rust Toolchains with `rustup`][ex-installation-rustup] | [![rustup][rustup-website-badge]][rustup-website] | [![cat-development-tools][cat-development-tools-badge]][cat-development-tools] | 4 | 5 | 7 | -------------------------------------------------------------------------------- /bk/drafts/categories/development-tools/transcompilation/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-transcompilation-c2rust]: transpilers.md#c2rust 2 | -------------------------------------------------------------------------------- /bk/drafts/categories/development-tools/transcompilation/transpilers.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |---|---|---| 3 | | [C to Rust Translation][ex-transcompilation-c2rust] | [![c2rust][c-c2rust-badge]][c-c2rust]{{hi:c2rust}} | [![cat-compilers][cat-compilers-badge]][cat-compilers] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/drafts/categories/development-tools_build-utils/autocfg.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`autocfg`][ex-development-tools_build-utils-autocfg] | [![autocfg][c-autocfg-badge]][c-autocfg] | [![cat-development-tools::build-utils][cat-development-tools::build-utils-badge]][cat-development-tools::build-utils] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/drafts/categories/development-tools_build-utils/build_cache.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Use `sccache`][ex-development-tools_build-utils-sccache] | [![sccache][c-sccache-badge]][c-sccache]{{hi:sccache}} | [![cat-development-tools::build-utils][cat-development-tools::build-utils-badge]][cat-development-tools::build-utils] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/drafts/categories/development-tools_debugging/debugging.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | | | [![cat-development-tools::debugging][cat-development-tools::debugging-badge]][cat-development-tools::debugging] | 4 | 5 | 7 | -------------------------------------------------------------------------------- /bk/drafts/categories/development-tools_debugging/diagnostic_functions.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Get the Type Name of the Pointed-to Value][ex-development-tools_debugging-type-name-of-val] | [![std][c-std-badge]][c-std] | [![cat-development-tools::debugging][cat-development-tools::debugging-badge]][cat-development-tools::debugging] | 4 | 5 | 7 | -------------------------------------------------------------------------------- /bk/drafts/categories/development-tools_debugging/metrics.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | 4 | 6 | -------------------------------------------------------------------------------- /bk/drafts/categories/development-tools_profiling/assembly.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Inspect the Generated Assembly][ex-development-tools_profiling-cargo-show-asm] | [![cargo-show-asm][c-cargo_show_asm-badge]][c-cargo_show_asm] | [![cat-development-tools::profiling][cat-development-tools::profiling-badge]][cat-development-tools::profiling] | 4 | 5 | 7 | -------------------------------------------------------------------------------- /bk/drafts/categories/email/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-email-build_email_messages]: send_emails.md#build_email_messages 2 | [ex-email-lettre]: send_emails.md#lettre 3 | [ex-email-mailparse]: email_parsing.md#mailparse 4 | [ex-email-mime]: email_parsing.md#mime 5 | -------------------------------------------------------------------------------- /bk/drafts/categories/email/send_emails.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Send Emails][ex-email-lettre] | [![lettre][c-lettre-badge]][c-lettre] | [![cat-email][cat-email-badge]][cat-email] | 4 | | [Build Email Messages][ex-email-build_email_messages] | [![lettre][c-lettre-badge]][c-lettre] | [![cat-email][cat-email-badge]][cat-email] | 5 | 6 | 9 | -------------------------------------------------------------------------------- /bk/drafts/categories/encoding/no_external_schema.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`postcard`][ex-encoding-postcard] | [![postcard][c-postcard-badge]][c-postcard] | [![cat-encoding][cat-encoding-badge]][cat-encoding] | 4 | | [`rkyv`][ex-encoding-rkyv] | [![rkyv][c-rkyv-badge]][c-rkyv] | [![cat-encoding][cat-encoding-badge]][cat-encoding] | 5 | -------------------------------------------------------------------------------- /bk/drafts/categories/encoding/typecasts.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`bytemuck`][ex-encoding-bytemuck] | [![bytemuck][c-bytemuck-badge]][c-bytemuck] | [![cat-encoding][cat-encoding-badge]][cat-encoding] | 4 | | [`zerocopy`][ex-encoding-zerocopy] | [![zerocopy][c-zerocopy-badge]][c-zerocopy] | [![cat-encoding][cat-encoding-badge]][cat-encoding] | 5 | 6 | 8 | -------------------------------------------------------------------------------- /bk/drafts/categories/filesystem/file_watching.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Watch Files or Directories and Execute a Function When They Change][ex-filesystem-watch-files-or-dirs] | [![notify][c-notify-badge]][c-notify] | [![cat-filesystem][cat-filesystem-badge]][cat-filesystem] | 4 | 5 | 7 | -------------------------------------------------------------------------------- /bk/drafts/categories/filesystem/tempfile.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Create Temporary Files or Temporary Directories][ex-filesystem-temporary-files-or-directories] | [![tempfile][c-tempfile-badge]][c-tempfile] | [![cat-filesystem][cat-filesystem-badge]][cat-filesystem] | 4 | 5 | 7 | -------------------------------------------------------------------------------- /bk/drafts/categories/graphics/refs.incl.md: -------------------------------------------------------------------------------- 1 | [p-cross-platform]: # "../../other/cross-platform/index.md" 2 | [p-graphics]: index.md 3 | [p-images]: ../multimedia_images/images.md 4 | [p-language]: ../../language/index.md 5 | [p-linear-algebra]: ../mathematics/linear_algebra.md 6 | [p-wasm]: # "../wasm/index.md" 7 | [p-window-creation]: # "../gui/window_creation.md" 8 | -------------------------------------------------------------------------------- /bk/drafts/categories/hardware-support/peripherals.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | | | [![cat-hardware-support][cat-hardware-support-badge]][cat-hardware-support] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/drafts/categories/os/low_level_system_calls.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Call `libc`, the C Standard Library][ex-os-call-libc] | [![libc][c-libc-badge]][c-libc] | [![cat-os][cat-os-badge]][cat-os] | 4 | 5 | 7 | -------------------------------------------------------------------------------- /bk/drafts/categories/os_unix-apis/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-os_unix-apis-nix]: unix.md#nix 2 | [ex-os_unix-apis-rustix]: unix.md#rustix 3 | [p-functions]: ../../language/functions.md 4 | [p-linux]: # "../os_linux-apis/linux.md" 5 | [p-macos]: ../os_macos-apis/macos.md 6 | -------------------------------------------------------------------------------- /bk/drafts/categories/os_windows-apis/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-os_windows-apis-winapi]: windows.md#winapi 2 | [ex-os_windows-apis-windows]: windows.md#windows 3 | [p-gui]: # "../gui/index.md" 4 | -------------------------------------------------------------------------------- /bk/drafts/categories/parser-implementations/ini.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Parse INI Configuration Files with `rust-ini`][ex-parser-implementations-ini] | [![rust-ini][c-rust_ini-badge]][c-rust_ini] | [![cat-parser-implementations][cat-parser-implementations-badge]][cat-parser-implementations] | 4 | 5 | 7 | -------------------------------------------------------------------------------- /bk/drafts/categories/parser-implementations/yaml.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Parse YAML with `serde_yml`][ex-parser-implementations-serde_yml] | [![serde_yml][c-serde_yml-badge]][c-serde_yml] | [![cat-parser-implementations][cat-parser-implementations-badge]][cat-parser-implementations] | 4 | 5 | 7 | -------------------------------------------------------------------------------- /bk/drafts/categories/parsing/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-parsing-nom]: parsing.md#nom 2 | [ex-parsing-pest]: parsing.md#pest 3 | [ex-parsing-tree-sitter]: parsing.md#tree-sitter 4 | -------------------------------------------------------------------------------- /bk/drafts/categories/rust-patterns/behavioral_patterns.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Implement the Typestate Pattern in Rust][ex-rust-patterns-typestate-pattern] | | [![cat-rust-patterns][cat-rust-patterns-badge]][cat-rust-patterns] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/drafts/categories/rust-patterns/structural_patterns.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | 4 | 7 | -------------------------------------------------------------------------------- /bk/drafts/categories/rust-patterns/structural_patterns.md: -------------------------------------------------------------------------------- 1 | # Structural Patterns 2 | 3 | {{#include structural_patterns.incl.md}} 4 | 5 | {{#include refs.incl.md}} 6 | {{#include ../../refs/link-refs.md}} 7 | 8 | 11 | -------------------------------------------------------------------------------- /bk/drafts/categories/template-engine/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-template-engine-create-html-from-template]: tera.md#create-html-from-template 2 | [ex-template-engine-tinytemplate]: tinytemplate.md#tinytemplate 3 | [p-template-engine]: index.md 4 | -------------------------------------------------------------------------------- /bk/drafts/categories/template-engine/tera.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Create HTML Files from a Template][ex-template-engine-create-html-from-template] | [![tera][c-tera-badge]][c-tera] | [![cat-template-engine][cat-template-engine-badge]][cat-template-engine] | 4 | 5 | 7 | -------------------------------------------------------------------------------- /bk/drafts/categories/template-engine/tinytemplate.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Create Markdown Fragments from a Template][ex-template-engine-tinytemplate] | [![tinytemplate][c-tinytemplate-badge]][c-tinytemplate] | [![cat-template-engine][cat-template-engine-badge]][cat-template-engine] | 4 | 5 | 7 | -------------------------------------------------------------------------------- /bk/drafts/categories/text-processing/string_concat.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Concatenate Strings][ex-text-processing-string-concat] | [![std][c-std-badge]][c-std] | [![cat-text-processing][cat-text-processing-badge]][cat-text-processing] | 4 | 5 | 7 | -------------------------------------------------------------------------------- /bk/drafts/categories/text-processing/string_parsing.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Implement the `FromStr` Trait for a Custom `struct`][ex-text-processing-implement-the-fromstr-trait-for-a-custom-struct] | [![std][c-std-badge]][c-std] | [![cat-text-processing][cat-text-processing-badge]][cat-text-processing] | 4 | -------------------------------------------------------------------------------- /bk/drafts/categories/text-processing/unicode.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Collect Unicode Graphemes][ex-text-processing-collect-unicode-graphemes] | [![unicode_segmentation][c-unicode_segmentation-badge]][c-unicode_segmentation] | [![cat-text-processing][cat-encoding-badge]][cat-text-processing] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/drafts/categories/web-programming_http-server/_axum.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |---|---|---| 3 | | [Create a web Server with `axum`][ex-web-programming_http-server-axum] | [![axum][c-axum-badge]][c-axum] | [![cat-web-programming][cat-web-programming-badge]][cat-web-programming] [![cat-web-programming::http-server][cat-web-programming::http-server-badge]][cat-web-programming::http-server] | 4 | 5 | 7 | -------------------------------------------------------------------------------- /bk/drafts/categories/web-programming_http-server/_graphql.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Create a GraphQL Endpoint][ex-web-programming_http-server-async-graphql] | [![async-graphql][c-async_graphql-badge]][c-async_graphql] | [![cat-web-programming::http-server][cat-web-programming::http-server-badge]][cat-web-programming::http-server] | 4 | 5 | 7 | -------------------------------------------------------------------------------- /bk/drafts/categories/web-programming_http-server/_grpc.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Implement gRPC][ex-web-programming_http-server-tonic] | [![tonic][c-tonic-badge]][c-tonic] | [![cat-web-programming::http-server][cat-web-programming::http-server-badge]][cat-web-programming::http-server] | 4 | 5 | 7 | -------------------------------------------------------------------------------- /bk/drafts/categories/web-programming_http-server/_hyper.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Implement an HTTP API with `hyper`][ex-web-programming_http-server-hyper] | [![hyper][c-hyper-badge]][c-hyper] | [![cat-web-programming::http-server][cat-web-programming::http-server-badge]][cat-web-programming::http-server] | 4 | 5 | 7 | -------------------------------------------------------------------------------- /bk/drafts/categories/web-programming_http-server/cors.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Implement CORS][ex-web-programming_http-server-cors] | [![tower][c-tower-badge]][c-tower] [![tower-http][c-tower_http-badge]][c-tower_http] | [![cat-web-programming][cat-web-programming-badge]][cat-web-programming] | 4 | 5 | 7 | -------------------------------------------------------------------------------- /bk/drafts/contributing/api_documentation.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Generate the `docs.rs` Documentation][ex-contributing-generate-the-documentation] | 4 | | [Using a Dev Container Feature][ex-contributing-dev-container-feature] | 5 | | [Other Methods to Preview the Documentation HTML][ex-contributing-other-methods-to-preview-the-documentation-html] | 6 | -------------------------------------------------------------------------------- /bk/drafts/contributing/dev_container_docker.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Docker Compose][ex-contributing-docker-compose] | 4 | | [Deployment to GitHub Pages][ex-contributing-deployment-to-github-pages] | 5 | | [Push Image to Docker Hub][ex-contributing-push-image-to-docker-hub] | 6 | -------------------------------------------------------------------------------- /bk/drafts/contributing/dev_environment_setup.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Using VS Code][ex-contributing-using-vs-code] | 4 | | [Other][ex-contributing-other] | 5 | | [contributing dev env setup][ex-contributing-dev-env-setup] | 6 | 7 | 10 | -------------------------------------------------------------------------------- /bk/drafts/contributing/development_editing.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Book Editing and Example Code Development][ex-contributing-book-editing] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/drafts/contributing/optional_preprocessors.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [contributing optional preprocessors][ex-contributing-optional-preprocessors] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/drafts/contributing/publication.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Publish to `crates.io`][ex-contributing-publish] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/drafts/contributing/repo_structure.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Repo Structure][ex-contributing-repo-structure] | 4 | | [All Examples are Fully and Continuously Tested][ex-contributing-examples-fully-tested] | 5 | 6 | 9 | -------------------------------------------------------------------------------- /bk/drafts/crate_selection/refs.incl.md: -------------------------------------------------------------------------------- 1 | [p-crates-alphabetical]: ../indices/crates_alphabetical.md 2 | [p-crates-categories]: ../indices/crates_by_category.md 3 | -------------------------------------------------------------------------------- /bk/drafts/indices/refs.incl.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/john-cd/rust_howto/8d198a7963c467d4ee4cd041ef4624d86e03e4eb/bk/drafts/indices/refs.incl.md -------------------------------------------------------------------------------- /bk/drafts/language/data_types.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Scalar Data Types][ex-language-scalar-data-types] | 4 | | [Compound Data Types: Tuples and Arrays][ex-language-compound-types] | 5 | | [Type Aliases][ex-language-type-aliases] | 6 | 7 | 10 | -------------------------------------------------------------------------------- /bk/drafts/language/generics.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Generic Structs][ex-language-generic-structs] | 4 | | [Generic Enums][ex-language-generic-enums] | 5 | | [Generic Functions][ex-language-generic-functions] | 6 | | [Generic Traits][ex-language-generic-traits] | 7 | -------------------------------------------------------------------------------- /bk/drafts/language/macros.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |---| 3 | | [Macro Uses][ex-language-macro-uses] | 4 | | [Macros By Example][ex-language-macros-by-example] | 5 | -------------------------------------------------------------------------------- /bk/drafts/language/match.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Match][ex-language-match] | 4 | | [Use `match` to Branch on a Pattern][ex-language-use-match-to-branch-on-a-pattern] | 5 | | [`if let`][ex-language-if-let] | 6 | | [`while let`][ex-language-while-let] | 7 | -------------------------------------------------------------------------------- /bk/drafts/language/rust_install.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Install Rust and Create a First Project][ex-language-rust-install] | 4 | -------------------------------------------------------------------------------- /bk/drafts/language/trait_objects.incl.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/john-cd/rust_howto/8d198a7963c467d4ee4cd041ef4624d86e03e4eb/bk/drafts/language/trait_objects.incl.md -------------------------------------------------------------------------------- /bk/drafts/links/blogs_podcasts_meetups.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Meetups][ex-links-meetups] | 4 | | [Newsletters][ex-links-newsletters] | 5 | | [Rust Podcasts][ex-links-podcasts-blogs] | 6 | -------------------------------------------------------------------------------- /bk/drafts/links/books.incl.md: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /bk/drafts/links/companies.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Companies that Use or Contribute to Rust][ex-links-companies] | 4 | | [Jobs][ex-links-jobs] | 5 | | [People][ex-links-people] | 6 | -------------------------------------------------------------------------------- /bk/drafts/links/example_code.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Example Code][ex-links-example-code] | 4 | | [RealWorld][ex-links-realworld] | 5 | | [Source Code for Rust Books][ex-links-rust-book-source-code] | 6 | -------------------------------------------------------------------------------- /bk/drafts/links/links.incl.md: -------------------------------------------------------------------------------- 1 | 8 | -------------------------------------------------------------------------------- /bk/drafts/links/rust_cheatsheets.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Cheatsheets][ex-links-cheatsheets] | 4 | | [Comparison to Other Languages][ex-links-comparison-to-other-languages] | 5 | -------------------------------------------------------------------------------- /bk/drafts/standard_library/interior_mutability.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | 2 | |---|---| 3 | | [`Cell`][ex-standard_library-cell] | | 4 | | [`OnceCell`][ex-standard_library-oncecell] | | 5 | | [`Cell`][ex-standard_library-refcell] | | 6 | -------------------------------------------------------------------------------- /bk/drafts/standard_library/rc.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | 2 | |---|---| 3 | | [Share Ownership of a Value with `Rc`][ex-standard-library-rc] | [![std][c-std-badge]][c-std] | 4 | | [Interior Mutability with `Rc` and `RefCell`][ex-standard_library-rc-refcell] | | | 5 | | [Share Ownership of a Value with `Rc`][ex-standard_library-rc] | | | 6 | -------------------------------------------------------------------------------- /bk/drafts/standard_library/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-standard_library-cell]: interior_mutability.md#cell 2 | [ex-standard_library-oncecell]: interior_mutability.md#oncecell 3 | [ex-standard_library-rc-refcell]: rc.md#rc-refcell 4 | [ex-standard_library-rc]: rc.md#rc 5 | [ex-standard_library-refcell]: interior_mutability.md#refcell 6 | -------------------------------------------------------------------------------- /bk/later/categories/accessibility/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-accessibility-accesskit]: screen_readers.md#accesskit 2 | [p-accessibility]: index.md 3 | [p-cross-platform]: # "../../other/cross-platform/index.md" 4 | -------------------------------------------------------------------------------- /bk/later/categories/accessibility/screen_readers.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Make a User Interface Accessible to Screen Readers][ex-accessibility-accesskit] | [![accesskit][c-accesskit-badge]][c-accesskit] | [![cat-accessibility][cat-accessibility-badge]][cat-accessibility] [![cat-gui][cat-gui-badge]][cat-gui] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/aerospace/aerospace.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |---|---|---| 3 | | [Aerospace][ex-aerospace-aero] | {{!crate }} | [![cat-aerospace][cat-aerospace-badge]][cat-aerospace] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/aerospace/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-aerospace-aero]: aerospace.md#aero 2 | -------------------------------------------------------------------------------- /bk/later/categories/aerospace_drones/drones.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |---|---|---| 3 | | [Drones][ex-aerospace_drones-drones] | {{!crate }} | [![cat-aerospace::drones][cat-aerospace::drones-badge]][cat-aerospace::drones] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/aerospace_drones/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-aerospace_drones-drones]: drones.md#drones 2 | -------------------------------------------------------------------------------- /bk/later/categories/aerospace_protocols/aerospace_protocols.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |---|---|---| 3 | | [Aerospace Protocols][ex-aerospace_protocols-aerospace_protocols] | {{!crate }} | [![cat-aerospace::protocols][cat-aerospace::protocols-badge]][cat-aerospace::protocols] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/aerospace_protocols/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-aerospace_protocols-aerospace_protocols]: aerospace_protocols.md#aerospace_protocols 2 | -------------------------------------------------------------------------------- /bk/later/categories/aerospace_simulation/aerospace_simulation.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |---|---|---| 3 | | [Aerospace Simulation][ex-aerospace_simulation-aerospace_simulation] | {{!crate }} | [![cat-aerospace::simulation][cat-aerospace::simulation-badge]][cat-aerospace::simulation] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/aerospace_simulation/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-aerospace_simulation-aerospace_simulation]: aerospace_simulation.md#aerospace_simulation 2 | -------------------------------------------------------------------------------- /bk/later/categories/aerospace_space-protocols/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-aerospace_space-protocols-space-protocols]: space_protocols.md#space-protocols 2 | [p-protocols]: ../aerospace_protocols/aerospace_protocols.md 3 | -------------------------------------------------------------------------------- /bk/later/categories/aerospace_space-protocols/space_protocols.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |---|---|---| 3 | | [Space Protocols][ex-aerospace_space-protocols-space-protocols] | {{!crate }} | [![cat-aerospace::space-protocols][cat-aerospace::space-protocols-badge]][cat-aerospace::space-protocols] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/aerospace_unmanned-aerial-vehicles/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-aerospace_unmanned-aerial-vehicles-uavs]: uavs.md#uavs 2 | -------------------------------------------------------------------------------- /bk/later/categories/aerospace_unmanned-aerial-vehicles/uavs.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |---|---|---| 3 | | [Unmanned Aerial Vehicles][ex-aerospace_unmanned-aerial-vehicles-uavs] | {{!crate }} | [![cat-aerospace::unmanned-aerial-vehicles][cat-aerospace::unmanned-aerial-vehicles-badge]][cat-aerospace::unmanned-aerial-vehicles] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/computer-vision/opencv.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |---|---|---| 3 | | [Analyze Images with `opencv`][ex-computer-vision-opencv] | [![opencv][c-opencv-badge]][c-opencv] | [![cat-computer-vision][cat-computer-vision-badge]][cat-computer-vision] | 4 | -------------------------------------------------------------------------------- /bk/later/categories/computer-vision/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-computer-vision-opencv]: opencv.md#opencv 2 | [p-cross-platform]: # "../../other/cross-platform/index.md" 3 | [p-images]: ../multimedia_images/images.md 4 | [p-machine-learning]: # "../science/machine_learning.md" 5 | [p-testing]: ../development-tools_testing/testing.md 6 | [p-video]: ../multimedia_video/video.md 7 | -------------------------------------------------------------------------------- /bk/later/categories/cryptography_cryptocurrencies/cryptocurrencies.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |---|---|---| 3 | | [Cryptocurrencies][ex-cryptography_cryptocurrencies-cryptocurrencies] | {{!crate }} | [![cat-cryptography::cryptocurrencies][cat-cryptography::cryptocurrencies-badge]][cat-cryptography::cryptocurrencies] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/cryptography_cryptocurrencies/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-cryptography_cryptocurrencies-cryptocurrencies]: cryptocurrencies.md#cryptocurrencies 2 | [p-cryptography]: ../cryptography/index.md 3 | [p-search]: ../database/search.md 4 | [p-testing]: ../development-tools_testing/testing.md 5 | -------------------------------------------------------------------------------- /bk/later/categories/development-tools_ffi/java.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`jni`][ex-development-tools_ffi-jni] | [![jni][c-jni-badge]][c-jni] | [![cat-development-tools::ffi][cat-development-tools::ffi-badge]][cat-development-tools::ffi] [![cat-external-ffi-bindings][cat-external-ffi-bindings-badge]][cat-external-ffi-bindings] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/development-tools_ffi/lua.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`mlua`][ex-development-tools_ffi-mlua] | [![mlua][c-mlua-badge]][c-mlua] | [![cat-development-tools::ffi][cat-development-tools::ffi-badge]][cat-development-tools::ffi] [![cat-external-ffi-bindings][cat-external-ffi-bindings-badge]][cat-external-ffi-bindings] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/development-tools_ffi/objc.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`objc2`][ex-development-tools_ffi-objc2] | [![objc2][c-objc2-badge]][c-objc2] | [![cat-development-tools::ffi][cat-development-tools::ffi-badge]][cat-development-tools::ffi] [![cat-external-ffi-bindings][cat-external-ffi-bindings-badge]][cat-external-ffi-bindings] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/development-tools_ffi/python.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Interop with Python with `pyo3`][ex-development-tools_ffi-pyo3] | [![pyo3][c-pyo3-badge]][c-pyo3] | [![cat-api-bindings][cat-api-bindings-badge]][cat-api-bindings] [![cat-external-ffi-bindings][cat-external-ffi-bindings-badge]][cat-external-ffi-bindings] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/embedded/embassy.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`embassy`][ex-embedded-embassy] | [![embassy][c-embassy-badge]][c-embassy] | [![cat-embedded][cat-embedded-badge]][cat-embedded] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/embedded/flash.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | | | [![cat-embedded][cat-embedded-badge]][cat-embedded] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/embedded/flash.md: -------------------------------------------------------------------------------- 1 | # Flash Programming 2 | 3 | {{#include flash.incl.md}} 4 | 5 | [`probe-rs`][c-probe_rs]⮳{{hi:probe-rs}}: A tool for flashing and debugging embedded devices. 6 | 7 | {{#include refs.incl.md}} 8 | {{#include ../../refs/link-refs.md}} 9 | 10 | 13 | -------------------------------------------------------------------------------- /bk/later/categories/embedded/hals.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`embedded-hal`][ex-embedded-embedded-hal] | [![embedded-hal][c-embedded-hal-badge]][c-embedded-hal]{{hi:embedded-hal}} | [![cat-embedded][cat-embedded-badge]][cat-embedded] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/embedded/pacs.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | | | [![cat-embedded][cat-embedded-badge]][cat-embedded] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/embedded/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-embedded-embassy]: embassy.md#embassy 2 | [ex-embedded-embedded-hal]: hals.md#embedded-hal 3 | [ex-embedded-portable-atomic]: useful_crates_embedded.md#portable-atomic 4 | [ex-embedded-postcard]: useful_crates_embedded.md#postcard 5 | [ex-embedded-smoltcp]: useful_crates_embedded.md#smoltcp 6 | -------------------------------------------------------------------------------- /bk/later/categories/embedded/rtos.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | | | [![cat-embedded][cat-embedded-badge]][cat-embedded] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/embedded/sensors.inlc.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | | | [![cat-embedded][cat-embedded-badge]][cat-embedded] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/embedded/sensors.md: -------------------------------------------------------------------------------- 1 | # Communication with Common Sensors Using Protocols like I2C, SPI, or UART 2 | 3 | {{#include sensors.incl.md}} 4 | 5 | {{#include refs.incl.md}} 6 | {{#include ../../refs/link-refs.md}} 7 | 8 | 11 | -------------------------------------------------------------------------------- /bk/later/categories/emulators/emulators.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Emulators][ex-emulators-emulators] | {{!crate }} | [![cat-emulators][cat-emulators-badge]][cat-emulators] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/emulators/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-emulators-emulators]: emulators.md#emulators 2 | [p-parsing]: ../parsing/parsing.md 3 | -------------------------------------------------------------------------------- /bk/later/categories/external-ffi-bindings/external_ffi_bindings.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [C Bindings][ex-external-ffi-bindings-ffi] | {{!crate }} | [![cat-external-ffi-bindings][cat-external-ffi-bindings-badge]][cat-external-ffi-bindings] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/external-ffi-bindings/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-external-ffi-bindings-ffi]: external_ffi_bindings.md#ffi 2 | -------------------------------------------------------------------------------- /bk/later/categories/finance/quant.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |---|---|---| 3 | | [`RustQuant`][ex-finance-rustquant] | [![rustquant][c-rustquant-badge]][c-rustquant] | [![cat-finance][cat-finance-badge]][cat-finance] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/finance/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-finance-rustquant]: quant.md#rustquant 2 | [p-finance]: index.md 3 | -------------------------------------------------------------------------------- /bk/later/categories/game-development/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-game-development-game-development]: game_development.md#game-development 2 | [ex-game-development-glam]: game_development.md#glam 3 | [p-crates]: ../../crate_selection/index.md 4 | -------------------------------------------------------------------------------- /bk/later/categories/games/refs.incl.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/john-cd/rust_howto/8d198a7963c467d4ee4cd041ef4624d86e03e4eb/bk/later/categories/games/refs.incl.md -------------------------------------------------------------------------------- /bk/later/categories/gui/clipboard.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`arboard`][ex-gui-arboard] | [![arboard][c-arboard-badge]][c-arboard] | [![cat-gui][cat-gui-badge]][cat-gui] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/gui/file_dialogs.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`rfd`][ex-gui-rfd] | [![rfd][c-rfd-badge]][c-rfd] | [![cat-gui][cat-gui-badge]][cat-gui] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/gui/gtk.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`gtk4`][ex-gui-gtk4] | [![gtk4][c-gtk4-badge]][c-gtk4] | [![cat-gui][cat-gui-badge]][cat-gui] | 4 | | [`relm4`][ex-gui-relm4] | [![relm4][c-relm4-badge]][c-relm4] | [![cat-gui][cat-gui-badge]][cat-gui] | 5 | 6 | 9 | -------------------------------------------------------------------------------- /bk/later/categories/gui/immediate_mode_gui.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`egui`][ex-gui-egui] | [![egui][c-egui-badge]][c-egui] | [![cat-gui][cat-gui-badge]][cat-gui] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/gui/text_layout.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`cosmic-text`][ex-gui-cosmic-text] | [![cosmic-text][c-cosmic_text-badge]][c-cosmic_text] | [![cat-gui][cat-gui-badge]][cat-gui] | 4 | | [`parley`][ex-gui-parley] | [![parley][c-parley-badge]][c-parley] | [![cat-gui][cat-gui-badge]][cat-gui] | 5 | 6 | 9 | -------------------------------------------------------------------------------- /bk/later/categories/gui/ui_layout.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`taffy`][ex-gui-taffy] | [![taffy][c-taffy-badge]][c-taffy] | [![cat-gui][cat-gui-badge]][cat-gui] | 4 | | [`morphorm`][ex-gui-morphorm] | [![morphorm][c-morphorm-badge]][c-morphorm] | [![cat-gui][cat-gui-badge]][cat-gui] | 5 | 6 | 9 | -------------------------------------------------------------------------------- /bk/later/categories/gui/web_based_gui.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`tauri`][ex-gui-tauri] | [![tauri][c-tauri-badge]][c-tauri] | [![cat-gui][cat-gui-badge]][cat-gui] | 4 | | [`dioxus`][ex-gui-dioxus] | [![dioxus][c-dioxus-badge]][c-dioxus] | [![cat-gui][cat-gui-badge]][cat-gui] | 5 | 6 | 9 | -------------------------------------------------------------------------------- /bk/later/categories/internationalization/internationalization.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Internationalize Your App][ex-internationalization-internationalization] | {{!crate }} | [![cat-internationalization][cat-internationalization-badge]][cat-internationalization] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/internationalization/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-internationalization-internationalization]: internationalization.md#internationalization 2 | [p-crates]: ../../crate_selection/index.md 3 | -------------------------------------------------------------------------------- /bk/later/categories/localization/localization.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Localize Your App][ex-localization-localization] | {{!crate }} | [![cat-localization][cat-localization-badge]][cat-localization] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/localization/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-localization-localization]: localization.md#localization 2 | -------------------------------------------------------------------------------- /bk/later/categories/multimedia/multimedia.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Multimedia][ex-multimedia-multimedia] | {{!crate }} | [![cat-multimedia][cat-multimedia-badge]][cat-multimedia] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/multimedia/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-multimedia-multimedia]: multimedia.md#multimedia 2 | -------------------------------------------------------------------------------- /bk/later/categories/multimedia_audio/audio.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Record, Output, or Process Audio][ex-multimedia_audio-audio] | {{!crate }} | [![cat-multimedia::audio][cat-multimedia::audio-badge]][cat-multimedia::audio] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/multimedia_audio/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-multimedia_audio-audio]: audio.md#audio 2 | -------------------------------------------------------------------------------- /bk/later/categories/multimedia_encoding/encoding.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Encode Your Media][ex-multimedia_encoding-encoding] | {{!crate }} | [![cat-multimedia::encoding][cat-multimedia::encoding-badge]][cat-multimedia::encoding] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/multimedia_encoding/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-multimedia_encoding-encoding]: encoding.md#encoding 2 | -------------------------------------------------------------------------------- /bk/later/categories/multimedia_images/color_handling.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`palette`][ex-multimedia_images-palette] | [![palette][c-palette-badge]][c-palette]{{hi:palette}} | [![cat-multimedia::images][cat-multimedia::images-badge]][cat-multimedia::images] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/multimedia_images/pixel_buffers.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`pixels`][ex-multimedia_images-pixel_buffers] | [![pixels][c-pixels-badge]][c-pixels]{{hi:pixels}} | [![cat-multimedia::images][cat-multimedia::images-badge]][cat-multimedia::images] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/multimedia_video/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-multimedia_video-video]: video.md#video 2 | -------------------------------------------------------------------------------- /bk/later/categories/multimedia_video/video.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Play Video][ex-multimedia_video-video] | {{!crate }} | [![cat-multimedia::video][cat-multimedia::video-badge]][cat-multimedia::video] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/no-std/no_std.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Crates Working Without `std`][ex-no-std-no-std] | {{!crate }} | [![cat-no-std][cat-no-std-badge]][cat-no-std] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/no-std/no_std.md: -------------------------------------------------------------------------------- 1 | # No `std` 2 | 3 | {{#include no_std.incl.md}} 4 | 5 | ## Crates Working Without `std` {#no-std} 6 | 7 | ```rust,editable 8 | {{#include ../../../crates/cats/no_std/tests/no_std/no_std1.rs:example}} 9 | ``` 10 | 11 | {{#include refs.incl.md}} 12 | {{#include ../../refs/link-refs.md}} 13 | 14 | 17 | -------------------------------------------------------------------------------- /bk/later/categories/no-std/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-no-std-no-std]: no_std.md#no-std 2 | -------------------------------------------------------------------------------- /bk/later/categories/no-std_no-alloc/no_alloc.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Crates Working Without `alloc`][ex-no-std_no-alloc-noalloc] | {{!crate }} | [![cat-no-std::no-alloc][cat-no-std::no-alloc-badge]][cat-no-std::no-alloc] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/no-std_no-alloc/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-no-std_no-alloc-noalloc]: no_alloc.md#noalloc 2 | -------------------------------------------------------------------------------- /bk/later/categories/os_freebsd-apis/freebsd.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Bind to FreeBSD APIs][ex-os_freebsd-apis-freebsd] | {{!crate }} | [![cat-os::freebsd-apis][cat-os::freebsd-apis-badge]][cat-os::freebsd-apis] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/os_freebsd-apis/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-os_freebsd-apis-freebsd]: freebsd.md#freebsd 2 | -------------------------------------------------------------------------------- /bk/later/categories/os_linux-apis/linux.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Bind to Linux APIs][ex-os_linux-apis-linux] | {{!crate }} | [![cat-os::linux-apis][cat-os::linux-apis-badge]][cat-os::linux-apis] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/os_linux-apis/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-os_linux-apis-linux]: linux.md#linux 2 | -------------------------------------------------------------------------------- /bk/later/categories/os_macos-apis/macos.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Bind to macOS APIs][ex-os_macos-apis-macos] | {{!crate }} | [![cat-os::macos-apis][cat-os::macos-apis-badge]][cat-os::macos-apis] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/os_macos-apis/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-os_macos-apis-macos]: macos.md#macos 2 | -------------------------------------------------------------------------------- /bk/later/categories/rendering/svg_rendering.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`resvg`][ex-rendering-resvg] | [![resvg][c-resvg-badge]][c-resvg]{{hi:resvg}} | [![cat-rendering][cat-rendering-badge]][cat-rendering] | 4 | | [`usvg`][ex-rendering-usvg] | [![usvg][c-usvg-badge]][c-usvg]{{hi:usvg}} | [![cat-rendering][cat-rendering-badge]][cat-rendering] | 5 | 6 | 9 | -------------------------------------------------------------------------------- /bk/later/categories/rendering_data-formats/data_formats.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Data Format][ex-rendering_data-formats-data-format] | {{!crate }} | [![cat-rendering::data-formats][cat-rendering::data-formats-badge]][cat-rendering::data-formats] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/rendering_data-formats/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-rendering_data-formats-data-format]: data_formats.md#data-format 2 | [p-crates]: ../../crate_selection/index.md 3 | -------------------------------------------------------------------------------- /bk/later/categories/rendering_engine/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-rendering_engine-render]: rendering_engines.md#render 2 | [p-crates]: ../../crate_selection/index.md 3 | -------------------------------------------------------------------------------- /bk/later/categories/rendering_engine/rendering_engines.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Use a Render Engine][ex-rendering_engine-render] | {{!crate }} | [![cat-rendering::engine][cat-rendering::engine-badge]][cat-rendering::engine] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/rendering_graphics-api/gpu_abstraction_layers.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [WebGPU Bindings with `wgpu`][ex-rendering_graphics-api-wgpu] | [![wgpu][c-wgpu-badge]][c-wgpu] | [![cat-graphics][cat-graphics-badge]][cat-graphics] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/science/classical_machine_learning.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Use Classical Machine Learning Algorithms][ex-science-classical-ml] | [![linfa][c-linfa-badge]][c-linfa] [![smartcore][c-smartcore-badge]][c-smartcore] | [![cat-science][cat-science-badge]][cat-science] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/science/deep_learning.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`candle`][ex-science-deep-learning] | [![candle-core][c-candle_core-badge]][c-candle_core] [![burn][c-burn-badge]][c-burn] | [![cat-science][cat-science-badge]][cat-science] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/science_geo/geo.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |---|---|---| 3 | | [Process Spatial Information, Maps, Navigation Data, and Geographic Information Systems][ex-science_geo-geo] | {{!crate }} | [![cat-science::geo][cat-science::geo-badge]][cat-science::geo] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/science_geo/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-science_geo-geo]: geo.md#geo 2 | -------------------------------------------------------------------------------- /bk/later/categories/science_neuroscience/neuroscience.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |---|---|---| 3 | | [Neuro][ex-science_neuroscience-neuro] | {{!crate }} | [![cat-science::neuroscience][cat-science::neuroscience-badge]][cat-science::neuroscience] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/science_neuroscience/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-science_neuroscience-neuro]: neuroscience.md#neuro 2 | -------------------------------------------------------------------------------- /bk/later/categories/science_robotics/artificial_intelligence.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Create a Behavior Tree with `bonsai-bt`][ex-science_robotics-bonsai-bt] | [![bonsai-bt][c-bonsai_bt-badge]][c-bonsai_bt] | [![cat-science::robotics][cat-science::robotics-badge]][cat-science::robotics] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/science_robotics/hardware_integration.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | | {{!crate }} | [![cat-science::robotics][cat-science::robotics-badge]][cat-science::robotics] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/science_robotics/perception_and_sensors.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | | {{!crate }} | [![cat-science::robotics][cat-science::robotics-badge]][cat-science::robotics] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/simulation/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-simulation-nphysics]: physics_engines.md#nphysics 2 | [ex-simulation-rapier]: physics_engines.md#rapier 3 | [ex-simulation-simul]: simulation.md#simul 4 | [p-asynchronous]: ../asynchronous/index.md 5 | -------------------------------------------------------------------------------- /bk/later/categories/simulation/simulation.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Simulate][ex-simulation-simul] | {{!crate }} | [![cat-simulation][cat-simulation-badge]][cat-simulation] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/value-formatting/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-value-formatting-itoa]: number_formatting.md#itoa 2 | [ex-value-formatting-ryu]: number_formatting.md#ryu 3 | [p-crates]: ../../crate_selection/index.md 4 | -------------------------------------------------------------------------------- /bk/later/categories/virtualization/containerization.incl.md: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /bk/later/categories/virtualization/containers.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Links | 2 | |--------|--------| 3 | | [Docker][ex-virtualization-docker] | [Docker Rust guide][docker-rust-guide]⮳ | 4 | | [Docker Compose][ex-virtualization-docker-compose] | [Docker Compose][docker-compose-website]⮳ | 5 | 6 | 9 | -------------------------------------------------------------------------------- /bk/later/categories/virtualization/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-virtualization-docker-compose]: containers.md#docker-compose 2 | [ex-virtualization-docker]: containers.md#docker 3 | [ex-virtualization-virt]: virtualization.md#virt 4 | [p-cloud]: # "../cloud/index.md" 5 | [p-containers]: ./containers.md 6 | [p-linux]: # "../os_linux-apis/linux.md" 7 | [p-windows]: # "../os_windows-apis/windows.md" 8 | -------------------------------------------------------------------------------- /bk/later/categories/virtualization/using_containers.incl.md: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /bk/later/categories/virtualization/virtualization.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Implement Virtualization][ex-virtualization-virt] | {{!crate }} | [![cat-virtualization][cat-virtualization-badge]][cat-virtualization] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/visualization/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-visualization-graph-data]: visualization.md#graph-data 2 | [ex-visualization-plotters]: visualization.md#plotters 3 | [p-wasm]: ../../../later/categories/wasm/index.md 4 | -------------------------------------------------------------------------------- /bk/later/categories/wasm/leptos.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`leptos`][ex-wasm-leptos] | [![leptos][c-leptos-badge]][c-leptos] | [![cat-web-programming::http-server][cat-web-programming::http-server-badge]][cat-web-programming::http-server] [![cat-wasm][cat-wasm-badge]][cat-wasm] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/wasm/wasm_basics.incl.md: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /bk/later/categories/wasm/wasm_development.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`wasm-pack`][ex-wasm-wasm-pack] | [![wasm-pack][c-wasm-pack-badge]][c-wasm-pack]{{hi:wasm-pack}} | [![cat-wasm][cat-wasm-badge]][cat-wasm] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/categories/wasm/wasm_standalone_runtimes.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [`wasmer`][ex-wasm-wasmer] | [![wasmer][c-wasmer-badge]][c-wasmer] | [![cat-wasm][cat-wasm-badge]][cat-wasm] | 4 | | [`wasmtime`][ex-wasm-wasmtime] | [![wasmtime][c-wasmtime-badge]][c-wasmtime] | [![cat-wasm][cat-wasm-badge]][cat-wasm] | 5 | 6 | 9 | -------------------------------------------------------------------------------- /bk/later/categories/wasm/yew.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [Create Efficient Web Applications with `yew`][ex-wasm-yew] | [![yew][c-yew-badge]][c-yew] | [![cat-wasm][cat-wasm-badge]][cat-wasm] | 4 | -------------------------------------------------------------------------------- /bk/later/categories/web-programming_websocket/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-web-programming_websocket-async-std]: websocket.md#async-std 2 | [ex-web-programming_websocket-general-purpose]: websocket.md#general-purpose 3 | [ex-web-programming_websocket-low-level]: websocket.md#low-level 4 | -------------------------------------------------------------------------------- /bk/later/other/architecture/architectural_patterns.incl.md: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /bk/later/other/architecture/software_architecture_process.incl.md: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /bk/later/other/cloud/_fragment.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | 2 | |--------| 3 | | [Use the `dapr` Distributed Runtime][ex-cloud-dapr] | 4 | | [cloud serverless computing][ex-cloud-serverless-computing] | 5 | -------------------------------------------------------------------------------- /bk/later/other/cloud/aws.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Links | 2 | |--------|--------| 3 | | [Interact with AWS Services with the AWS SDK for Rust][ex-cloud-aws-sdk-rust] | [AWS Rust SDK][aws-rust-sdk-website]⮳ | 4 | | [Implement AWS Lambda Functions in Rust][ex-cloud-lambda] | [AWS Rust SDK][aws-rust-sdk-website]⮳ | 5 | -------------------------------------------------------------------------------- /bk/later/other/cloud/rust_native_cloud_development.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Links | 2 | |--------|--------| 3 | | [Deploy Rust Code on `shuttle.dev`][ex-cloud-shuttle] | [docs.shuttle.rs][docs-shuttle-rs]⮳ | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/other/cross-platform/crux.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Links | 2 | |--------|--------| 3 | | [Develop Across Platforms with `crux`][ex-cross-platform-develop-across-platforms] | [![crux_core][c-crux_core-badge]][c-crux_core] | 4 | -------------------------------------------------------------------------------- /bk/later/other/cross-platform/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-cross-platform-develop-across-platforms]: crux.md#develop-across-platforms 2 | [p-architecture]: ../architecture/software_architecture_process.md 3 | [p-language]: ../../language/index.md 4 | -------------------------------------------------------------------------------- /bk/later/other/data-processing/csv.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | 2 | |--------|--------| 3 | | [Manipulate CSV Files from the Command Line][ex-data-processing-manipulate-csv-files-from-the-command-line] | [![xsv][c-xsv-badge]][c-xsv] | 4 | -------------------------------------------------------------------------------- /bk/later/other/data-processing/dataframes.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | 2 | |--------|--------| 3 | | [Manipulate Data in a Tabular Format][ex-data-processing-dataframes] | [![polars][c-polars-badge]][c-polars] | 4 | -------------------------------------------------------------------------------- /bk/later/other/devops/cd_ci.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | 2 | |--------| 3 | | [Continuous Deployment / Continuous Integration][ex-devops-cdci] | 4 | | [Workflow Example (GitHub Actions)][ex-devops-github-actions] | 5 | 6 | 9 | -------------------------------------------------------------------------------- /bk/later/other/devops/github_actions.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | 2 | |--------|--------| 3 | | [Install Development Tools][ex-devops-installation-of-development-tools] | [`install-action`][install_action-github]⮳ | 4 | | [Cache Your Compilation][ex-devops-compilation-caching] | [`rust-cache`][c-rust_cache-github]⮳ | 5 | 6 | 9 | -------------------------------------------------------------------------------- /bk/later/other/devops/version_control.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | 2 | |--------|--------| 3 | | [Check Your Code Before Committing it][ex-devops-check-your-code-before-committing] | [![cargo-husky][c-cargo_husky-badge]][c-cargo_husky] | 4 | | [`pre-commit`][ex-devops-pre-commit] | [`pre-commit`][pre-commit.com-website]⮳ | 5 | 6 | 9 | -------------------------------------------------------------------------------- /bk/later/other/gpu/gpu.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | 2 | |--------|--------| 3 | | [`rust-gpu`][ex-gpu-rust-gpu] | [![rust_gpu-github][rust_gpu-github-badge]][rust_gpu-github] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/later/other/gpu/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-gpu-rust-gpu]: gpu.md#rust-gpu 2 | -------------------------------------------------------------------------------- /bk/later/other/scripting/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-scripting-rust-scripting]: rhai.md#rust-scripting 2 | [p-functions]: ../../language/functions.md 3 | [p-parsing]: ../../categories/parsing/parsing.md 4 | [p-scripting]: index.md 5 | -------------------------------------------------------------------------------- /bk/later/other/scripting/task_automation.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | | | | 4 | 5 | 8 | -------------------------------------------------------------------------------- /bk/master/README.md: -------------------------------------------------------------------------------- 1 | # Master Lists 2 | 3 | The `master` folder contains the master list of crates used by the book's code examples. 4 | 5 | To update this list, follow the instructions in the [README](../../tools/crate_indices/README.md) of the `crate_indices` tool. 6 | -------------------------------------------------------------------------------- /bk/scripts/book/build_book.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | set -euo pipefail 3 | 4 | # Generate the book's HTML / JS 5 | # Usage: ./scripts/build_book.sh 6 | 7 | root="$(realpath $1)/" 8 | 9 | # Make sure that `book.toml` is available 10 | # See `quick.sh` 11 | if [ ! -f ${root}book.toml ]; then 12 | cp -f ${root}book.toml.bak ${root}book.toml 13 | fi 14 | 15 | mdbook build ${root} 16 | 17 | echo "DONE" 18 | -------------------------------------------------------------------------------- /bk/src/code_organization/dependencies.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Use Items from External Crates (Dependencies) in your Code][ex-code_organization-dependencies] | 4 | -------------------------------------------------------------------------------- /bk/src/code_organization/index.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | -------------------------------------------------------------------------------- /bk/src/code_organization/modules.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Structure your Code into Modules][ex-code_organization-modules] | 4 | | [Split your Code into Several Files][ex-code_organization-code-files] | 5 | | [Access Items Within Modules via Paths][ex-code_organization-paths] | 6 | | [Use Modules to Hide Implementation Details][ex-code_organization-hide-implementation-details] | 7 | -------------------------------------------------------------------------------- /bk/src/contributing/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-contributing-topics-of-interest]: topics_of_interest.md#topics-of-interest 2 | -------------------------------------------------------------------------------- /bk/src/contributing/topics_of_interest.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Topics of Interest][ex-contributing-topics-of-interest] | 4 | 5 | 7 | -------------------------------------------------------------------------------- /bk/src/language/closures.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Closure Syntax][ex-language-closure] | 4 | | [Force Closure Capture by Value][ex-language-move-closures] | 5 | | [Annotate Closure Types][ex-language-closure-with-type-annotations] | 6 | | [Use Closures as Function Arguments][ex-language-closures-as-input-parameters] | 7 | -------------------------------------------------------------------------------- /bk/src/language/constants_and_statics.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Constants][ex-language-constants] | 4 | | [Statics][ex-language-statics] | 5 | -------------------------------------------------------------------------------- /bk/src/language/control_flow.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Execute Code based on a Condition using `if` and `else`][ex-language-if-else] | 4 | | [Create Loops using `loop`][ex-language-loop] | 5 | | [Execute Code Repeatedly While a Condition is True with `while`][ex-language-while] | 6 | | [Iterate Through a Collection with `for`][ex-language-for] | 7 | | [Exit Early from Blocks][ex-language-labeled-block-expressions] | 8 | -------------------------------------------------------------------------------- /bk/src/language/entrypoint.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Main Function][ex-language-main-function] | 4 | | [Async Main Function][ex-language-async-main-function] | 5 | -------------------------------------------------------------------------------- /bk/src/language/enums.incl.md: -------------------------------------------------------------------------------- 1 | ||| 2 | |---|---| 3 | | [Enum Syntax][ex-language-enum] | | 4 | | [Common `enums`][ex-language-common-enums] | | 5 | | [Convert between Strings and Enum Variants with `strum`][ex-language-strum] | [![strum][c-strum-badge]][c-strum]{{hi:strum}} | 6 | -------------------------------------------------------------------------------- /bk/src/language/functions.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Write a Rust Function][ex-language-function] | 4 | | [Write a Generic Function][ex-language-write-generic-functions] | 5 | | [Return a Reference from a Function][ex-language-return-reference] | 6 | | [Diverging Functions][ex-language-diverging-functions] | 7 | | [Function Pointers][ex-language-function-pointers] | 8 | -------------------------------------------------------------------------------- /bk/src/language/lifetimes.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Lifetime][ex-language-lifetime] | 4 | | [Static Lifetime][ex-language-static-lifetime] | 5 | | [Lifetime Parameters in Functions][ex-language-lifetimes-in-functions] | 6 | | [Lifetime Parameters in Struct Definitions and Methods][ex-language-lifetime-annotations] | 7 | -------------------------------------------------------------------------------- /bk/src/language/naming_conventions.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Name your Functions, Types, etc. (Naming Conventions)][ex-language-naming-conventions] | 4 | | [Decide Between `as_*` vs `to_*` vs `into_*` for Conversion Methods][ex-language-conversion-conventions] | 5 | | [Name Getters][ex-language-getter-conventions] | 6 | | [Name Iterators][ex-language-iterator-conventions] | 7 | -------------------------------------------------------------------------------- /bk/src/language/ownership_borrowing.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Ownership][ex-language-ownership] | 4 | | [Move Semantics][ex-language-move-semantics] | 5 | | [Clone (Deep Copy)][ex-language-clone] | 6 | | [Copy Semantics][ex-language-copy-semantics] | 7 | | [References and Borrowing][ex-language-references] | 8 | | [Borrowing when Calling a Function][ex-language-borrowing] | 9 | -------------------------------------------------------------------------------- /bk/src/language/slices.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Slice Basics][ex-language-slices] | 4 | | [Create Slices from Arrays or Vectors][ex-language-create-slices] | | | 5 | | [String Slices][ex-language-string-slices] | | | 6 | | [Use a Slice as a Function Argument][ex-language-use-slice-as-function-argument] | | | 7 | -------------------------------------------------------------------------------- /bk/src/language/variables.incl.md: -------------------------------------------------------------------------------- 1 | || 2 | |--------| 3 | | [Variables][ex-language-variables] | 4 | | [Immutability and Mutability][ex-language-immutability] | 5 | | [Shadowing][ex-language-shadowing] | 6 | | [Destructuring][ex-language-destructuring] | 7 | -------------------------------------------------------------------------------- /bk/src/refs/link-refs.md: -------------------------------------------------------------------------------- 1 | {{#include category-refs.md}} 2 | {{#include crate-refs.md}} 3 | {{#include other-refs.md}} 4 | -------------------------------------------------------------------------------- /bk/src/standard_library/derive.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | 2 | |---|---| 3 | | [Derive Common Traits Automatically][ex-standard_library-derive] | [![std][c-std-badge]][c-std] | 4 | | [Derive Additional Traits with `derive_more`][ex-standard_library-derive-more] | [![derive_more][c-derive_more-badge]][c-derive_more] | 5 | -------------------------------------------------------------------------------- /bk/src/standard_library/smart_pointers.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | 2 | |---|---| 3 | | [`RefCell`][ex-standard_library-refcell] | [![std][c-std-badge]][c-std] | 4 | | [`Cell`][ex-standard_library-cell] | [![std][c-std-badge]][c-std] | 5 | | [`OnceCell`][ex-standard_library-oncecell] | [![std][c-std-badge]][c-std] | 6 | -------------------------------------------------------------------------------- /bk/src/word_index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/john-cd/rust_howto/8d198a7963c467d4ee4cd041ef4624d86e03e4eb/bk/src/word_index.md -------------------------------------------------------------------------------- /bk/static/android-chrome-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/john-cd/rust_howto/8d198a7963c467d4ee4cd041ef4624d86e03e4eb/bk/static/android-chrome-192x192.png -------------------------------------------------------------------------------- /bk/static/android-chrome-512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/john-cd/rust_howto/8d198a7963c467d4ee4cd041ef4624d86e03e4eb/bk/static/android-chrome-512x512.png -------------------------------------------------------------------------------- /bk/static/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/john-cd/rust_howto/8d198a7963c467d4ee4cd041ef4624d86e03e4eb/bk/static/apple-touch-icon.png -------------------------------------------------------------------------------- /bk/static/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/john-cd/rust_howto/8d198a7963c467d4ee4cd041ef4624d86e03e4eb/bk/static/favicon-16x16.png -------------------------------------------------------------------------------- /bk/static/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/john-cd/rust_howto/8d198a7963c467d4ee4cd041ef4624d86e03e4eb/bk/static/favicon-32x32.png -------------------------------------------------------------------------------- /bk/static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/john-cd/rust_howto/8d198a7963c467d4ee4cd041ef4624d86e03e4eb/bk/static/favicon.ico -------------------------------------------------------------------------------- /bk/static/ferris/rustacean-flat-happy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/john-cd/rust_howto/8d198a7963c467d4ee4cd041ef4624d86e03e4eb/bk/static/ferris/rustacean-flat-happy.png -------------------------------------------------------------------------------- /bk/static/ferris/rustacean-orig-noshadow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/john-cd/rust_howto/8d198a7963c467d4ee4cd041ef4624d86e03e4eb/bk/static/ferris/rustacean-orig-noshadow.png -------------------------------------------------------------------------------- /bk/static/logo/logo_large.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/john-cd/rust_howto/8d198a7963c467d4ee4cd041ef4624d86e03e4eb/bk/static/logo/logo_large.png -------------------------------------------------------------------------------- /bk/static/site.webmanifest: -------------------------------------------------------------------------------- 1 | {"name":"","short_name":"","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"} -------------------------------------------------------------------------------- /googleebeeacff1e2f9e08.html: -------------------------------------------------------------------------------- 1 | google-site-verification: googleebeeacff1e2f9e08.html -------------------------------------------------------------------------------- /mdbook-scrub/.cargo/config.toml: -------------------------------------------------------------------------------- 1 | 2 | [build] 3 | target-dir = "../target/mdbook-scrub/" 4 | -------------------------------------------------------------------------------- /mdbook-scrub/.markdownlint.yaml: -------------------------------------------------------------------------------- 1 | MD012: false 2 | MD033: false 3 | MD037: false 4 | MD042: false 5 | MD052: false 6 | -------------------------------------------------------------------------------- /mdbook-scrub/test_book/src/SUMMARY.md: -------------------------------------------------------------------------------- 1 | # Summary 2 | 3 | - [Scrub hidden sections and don't include hidden files](./hidden.md) 4 | - [Scrub wikilinks](./wikilinks.md) 5 | - [Scrub example directives](./examples.md) 6 | - [Scrub category directives](./categories.md) 7 | - [Scrub crate directives](./crates.md) 8 | - [Scrub crate blocks](./crate_blocks.md) 9 | - [Others](./others.md) 10 | -------------------------------------------------------------------------------- /mdbook-scrub/test_book/src/included.txt: -------------------------------------------------------------------------------- 1 | THIS SHOULD BE SEEN 2 | 3 | [The reference definition is in the parent file this file is included into][ref] 4 | 5 | [The reference definition is another file that is included in the parent file][ref2] 6 | -------------------------------------------------------------------------------- /mdbook-scrub/test_book/src/refs.md: -------------------------------------------------------------------------------- 1 | [ref2]: http://google.com/ 2 | -------------------------------------------------------------------------------- /playground/.cargo/config.toml: -------------------------------------------------------------------------------- 1 | 2 | [build] 3 | target-dir = "../target/playground/" 4 | -------------------------------------------------------------------------------- /playground/README.md: -------------------------------------------------------------------------------- 1 | # README 2 | 3 | This folder contains bits and pieces of code for testing and exploration. 4 | -------------------------------------------------------------------------------- /playground/autogen/README.md: -------------------------------------------------------------------------------- 1 | # Autogen 2 | -------------------------------------------------------------------------------- /playground/autogen/src/cli.rs: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /playground/autogen/src/lib.rs: -------------------------------------------------------------------------------- 1 | mod parser; 2 | // use anyhow::Result; 3 | // use std::fs; 4 | 5 | // fn main() { 6 | // let unparsed_file = fs::read_to_string("numbers.csv").expect("cannot read file"); 7 | 8 | // // ... 9 | // } 10 | -------------------------------------------------------------------------------- /playground/autogen/src/main.rs: -------------------------------------------------------------------------------- 1 | #![allow(unused_imports)] 2 | // use tool_lib::*; 3 | 4 | mod cli; 5 | 6 | fn main() {} 7 | // [decide what to do](https://github.com/john-cd/rust_howto/issues/1061) 8 | -------------------------------------------------------------------------------- /playground/autogen/templates/chapter/index.incl.md: -------------------------------------------------------------------------------- 1 | | Recipe | Crates | Categories | 2 | |--------|--------|------------| 3 | | [{{ recipe }}][ex-{{ recipe }}] | [![{{ crate.name }}][c-{{ crate.name }}-badge]][c-{{ crate.name }}] | [![cat-{{ category.slug }}][cat-{{category.slug}}-badge]][cat-{{ category.slug }}] | 4 | 5 | 8 | -------------------------------------------------------------------------------- /playground/autogen/templates/chapter/index.md: -------------------------------------------------------------------------------- 1 | # {{ chapter.title }} 2 | 3 | {{ chapter.description }} 4 | 5 | {% raw %}{{{% endraw %}#include index.incl.md{% raw %}}}{% endraw %} 6 | 7 | {% raw %} 8 | {{#include refs.incl.md}} 9 | {{#include ../../refs/link-refs.md}} 10 | {% endraw %} 11 | 12 | 15 | -------------------------------------------------------------------------------- /playground/autogen/templates/chapter/refs.incl.md: -------------------------------------------------------------------------------- 1 | [ex-{{recipe}}]: {{ subchapter | underscore }}.md#{{ recipe.title | slugify }} 2 | -------------------------------------------------------------------------------- /playground/autogen/templates/chapter/subchapter.md: -------------------------------------------------------------------------------- 1 | # {{subchapter.title}} 2 | 3 | ## {{recipe.title}} 4 | 5 | {% raw %} 6 | {{#include refs.incl.md}} 7 | {{#include ../../refs/link-refs.md}} 8 | {% endraw %} 9 | 10 | 13 | -------------------------------------------------------------------------------- /playground/bits_and_pieces/.cargo-husky/hooks/pre-commit: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | 4 | echo '+just fmtall' 5 | just fmtall 6 | 7 | echo '+just clippyall' 8 | just clippyall 9 | 10 | echo '+just sortrefs' 11 | just sortrefs 12 | 13 | echo '+just buildbook' 14 | just buildbook 15 | -------------------------------------------------------------------------------- /playground/bits_and_pieces/.cargo-husky/hooks/pre-push: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | 4 | echo '+just prep' 5 | just prep 6 | -------------------------------------------------------------------------------- /playground/bits_and_pieces/just/justfile.2: -------------------------------------------------------------------------------- 1 | # check_ascii: 2 | # #!/usr/bin/env bash 3 | # for file in $(find . -type f -name "*.md" ) 4 | # do 5 | # if diff -q --suppress-common-lines <(strings -w $file) $file; then 6 | # echo $file 7 | # fi 8 | # done 9 | -------------------------------------------------------------------------------- /playground/bits_and_pieces/link_checker/links/mod.rs: -------------------------------------------------------------------------------- 1 | mod asynchro; 2 | mod link; 3 | 4 | pub use asynchro::*; 5 | pub use link::*; 6 | -------------------------------------------------------------------------------- /playground/examples_wip/src/main.rs: -------------------------------------------------------------------------------- 1 | fn main() { 2 | println!("Look in the examples folder."); 3 | } 4 | -------------------------------------------------------------------------------- /publish/.cargo/config.toml: -------------------------------------------------------------------------------- 1 | 2 | [build] 3 | target-dir = "../target/publish/" 4 | -------------------------------------------------------------------------------- /tools/.cargo/config.toml: -------------------------------------------------------------------------------- 1 | 2 | [build] 3 | target-dir = "../target/tools/" 4 | -------------------------------------------------------------------------------- /tools/clean/README.md: -------------------------------------------------------------------------------- 1 | # clean 2 | 3 | A very simnple tool to clean `temp` folders before and after testing. 4 | Keeps any `.gitkeep` stub file in these folders. 5 | -------------------------------------------------------------------------------- /tools/rustfmt.toml: -------------------------------------------------------------------------------- 1 | edition = "2024" 2 | newline_style = "Unix" # Default: "Auto" 3 | #max_width = 80 # Default: 100 4 | imports_granularity = "Item" 5 | group_imports = "StdExternalCrate" 6 | -------------------------------------------------------------------------------- /tools/tool_lib/src/lib.rs: -------------------------------------------------------------------------------- 1 | //! Library used by all CLI tools (`tools` folder) 2 | mod all_categories; 3 | mod cargo_toml; 4 | mod crates_io; 5 | mod model; 6 | mod read_write; 7 | mod templates; 8 | mod tera; 9 | 10 | pub use all_categories::*; 11 | pub use cargo_toml::*; 12 | pub use crates_io::*; 13 | pub use model::*; 14 | pub use read_write::*; 15 | pub use templates::*; 16 | pub use tera::*; 17 | -------------------------------------------------------------------------------- /tools/tool_lib/src/model/book/exampleindex.rs: -------------------------------------------------------------------------------- 1 | use serde::Serialize; 2 | 3 | // use super::*; 4 | 5 | #[derive(Serialize, Debug)] 6 | pub struct ExampleIndex; 7 | // [finish; unit tests](https://github.com/john-cd/rust_howto/issues/1368) 8 | -------------------------------------------------------------------------------- /tools/tool_lib/src/model/category.rs: -------------------------------------------------------------------------------- 1 | use serde::Serialize; 2 | 3 | /// Represents a category. 4 | #[derive(Eq, PartialEq, PartialOrd, Ord, Hash, Serialize, Debug)] 5 | pub struct Category { 6 | /// The name of the category. 7 | pub category: String, 8 | /// A URL-friendly slug for the category. 9 | pub slug: String, 10 | /// The description of the category. 11 | pub description: String, 12 | } 13 | -------------------------------------------------------------------------------- /tools/tool_lib/src/model/mod.rs: -------------------------------------------------------------------------------- 1 | #![allow(dead_code)] 2 | // [finish](https://github.com/john-cd/rust_howto/issues/1362) 3 | pub mod book; 4 | mod category; 5 | mod crates; 6 | 7 | pub use category::*; 8 | pub use crates::*; 9 | -------------------------------------------------------------------------------- /xmpl/.cargo/config.toml: -------------------------------------------------------------------------------- 1 | 2 | [build] 3 | target-dir = "../target/xmpl/" 4 | -------------------------------------------------------------------------------- /xmpl/README.md: -------------------------------------------------------------------------------- 1 | # Additional Examples 2 | 3 | This workspace contains additional examples that are linked from but not embedded into the book, due to their length. 4 | --------------------------------------------------------------------------------