├── .cargo └── config.toml ├── .github ├── actions │ └── setup │ │ └── action.yml └── workflows │ ├── parallel-build.yml │ └── weekly-canary-build.yml ├── .gitignore ├── LICENSE.txt ├── README.md ├── _redirects ├── cloudflare.sh ├── describe.sh ├── exercise-book ├── book.toml ├── src │ ├── SUMMARY.md │ ├── async-chat │ │ ├── accept_loop.md │ │ ├── all_together.md │ │ ├── clean_shutdown.md │ │ ├── connecting_readers_and_writers.md │ │ ├── final_server_code.md │ │ ├── handling_disconnection.md │ │ ├── implementing_a_client.md │ │ ├── index.md │ │ ├── receiving_messages.md │ │ ├── sending_messages.md │ │ └── specification.md │ ├── building-linux-kernel-driver.md │ ├── calculator.md │ ├── connected-mailbox.md │ ├── fizzbuzz-cheat-sheet.md │ ├── fizzbuzz-match.md │ ├── fizzbuzz.md │ ├── green-yellow-game.md │ ├── img │ │ ├── nrf52840_dk_board.jpg │ │ ├── puzzle_illustration.jpg │ │ ├── usb-all-endpoints.svg │ │ ├── usb-configuration.svg │ │ ├── usb-control.svg │ │ ├── usb-device.svg │ │ ├── usb-endpoint.svg │ │ └── usb-interface.svg │ ├── introduction.md │ ├── iterators.md │ ├── kani-linked-list.md │ ├── multi-threaded-mailbox.md │ ├── nrf52-code-organisation.md │ ├── nrf52-hal-buttons.md │ ├── nrf52-hal-exercise.md │ ├── nrf52-hardware.md │ ├── nrf52-preparation.md │ ├── nrf52-radio-alt-containers.md │ ├── nrf52-radio-binary-size.md │ ├── nrf52-radio-building-program.md │ ├── nrf52-radio-collision-avoidance.md │ ├── nrf52-radio-dongle.md │ ├── nrf52-radio-exercise.md │ ├── nrf52-radio-from-scratch.md │ ├── nrf52-radio-in.md │ ├── nrf52-radio-interrupt-handling.md │ ├── nrf52-radio-link-quality.md │ ├── nrf52-radio-messages.md │ ├── nrf52-radio-next-steps.md │ ├── nrf52-radio-out.md │ ├── nrf52-radio-panicking.md │ ├── nrf52-radio-parts-embedded-program.md │ ├── nrf52-radio-puzzle-help.md │ ├── nrf52-radio-puzzle.md │ ├── nrf52-radio-running-from-vsc.md │ ├── nrf52-radio-setup.md │ ├── nrf52-radio-time.md │ ├── nrf52-radio-using-hal.md │ ├── nrf52-references-resources.md │ ├── nrf52-tools.md │ ├── nrf52-tooltips.md │ ├── nrf52-troubleshoot-cargo-build.md │ ├── nrf52-troubleshoot-cargo-flash.md │ ├── nrf52-troubleshoot-cargo-run-error.md │ ├── nrf52-troubleshoot-cargo-size.md │ ├── nrf52-troubleshoot-dongle-flash.md │ ├── nrf52-troubleshoot-location-info.md │ ├── nrf52-troubleshoot-probe-not-found.md │ ├── nrf52-troubleshoot-rust-analyzer.md │ ├── nrf52-troubleshoot-usb-dongle.md │ ├── nrf52-troubleshooting.md │ ├── nrf52-usb-advanced-next-steps.md │ ├── nrf52-usb-api-documentation.md │ ├── nrf52-usb-configuration-descriptor.md │ ├── nrf52-usb-control-transfers.md │ ├── nrf52-usb-data-stage.md │ ├── nrf52-usb-dealing-with-registers.md │ ├── nrf52-usb-device-descriptor.md │ ├── nrf52-usb-dma.md │ ├── nrf52-usb-endpoint-descriptor.md │ ├── nrf52-usb-event-handling.md │ ├── nrf52-usb-exercise.md │ ├── nrf52-usb-extra-info.md │ ├── nrf52-usb-getting-device-configured.md │ ├── nrf52-usb-hello-world.md │ ├── nrf52-usb-idle-state.md │ ├── nrf52-usb-inspecting-descriptors.md │ ├── nrf52-usb-interface-descriptor.md │ ├── nrf52-usb-interfaces.md │ ├── nrf52-usb-listing-usb-devices.md │ ├── nrf52-usb-rtic-hello.md │ ├── nrf52-usb-set-config.md │ ├── nrf52-usb-setup-stage.md │ ├── nrf52-usb-stack-overflow-protection.md │ ├── nrf52-usb-supporting-standard-requests.md │ ├── nrf52-usb-task-state.md │ ├── nrf52-usb-usb-endpoints.md │ ├── nrf52-usb-usb-enumeration.md │ ├── nrf52-usb-usb-events.md │ ├── nrf52-usb-usb-specification.md │ ├── realtime-v8r-preparation.md │ ├── realtime-v8r-uart.md │ ├── realtime-withoutstd-println.md │ ├── realtime-withoutstd.md │ ├── rustlatin.md │ ├── self-check.md │ ├── shapes.md │ ├── simple-db-knowledge.md │ ├── simple-db-solution.md │ ├── simple-db.md │ ├── tcp-server-log.md │ ├── tcp-server.md │ └── urls-match-result.md └── theme │ └── head.hbs ├── exercise-solutions ├── Cargo.lock ├── Cargo.toml ├── async-chat │ ├── .gitignore │ ├── Cargo.toml │ └── src │ │ ├── client.rs │ │ ├── main.rs │ │ └── server.rs ├── calculator │ └── calc │ │ ├── Cargo.toml │ │ └── src │ │ └── lib.rs ├── connected-mailbox │ ├── Cargo.lock │ ├── Cargo.toml │ ├── simple-db │ │ ├── Cargo.toml │ │ ├── src │ │ │ └── lib.rs │ │ └── tests │ │ │ └── test.rs │ └── tcp-server │ │ ├── Cargo.toml │ │ └── src │ │ └── main.rs ├── fizzbuzz │ ├── Cargo.toml │ └── src │ │ ├── examples │ │ ├── fizzbuzz.rs │ │ └── fizzbuzz_match.rs │ │ └── main.rs ├── green-yellow │ ├── Cargo.toml │ └── src │ │ └── bin │ │ ├── complete.rs │ │ ├── step2.rs │ │ ├── step3.rs │ │ ├── step4.rs │ │ ├── step5.rs │ │ └── step6.rs ├── iterators │ ├── Cargo.toml │ ├── numbers.txt │ └── src │ │ └── main.rs ├── kani-linked-list │ ├── .vscode │ │ └── settings.json │ ├── Cargo.toml │ └── src │ │ └── lib.rs ├── multi-threaded-mailbox │ ├── Cargo.lock │ ├── Cargo.toml │ ├── simple-db │ │ ├── Cargo.toml │ │ ├── src │ │ │ └── lib.rs │ │ └── tests │ │ │ └── test.rs │ ├── with-arc │ │ ├── Cargo.toml │ │ └── src │ │ │ └── main.rs │ └── with-scoped-threads │ │ ├── Cargo.toml │ │ └── src │ │ └── main.rs ├── rustlatin │ ├── step1 │ │ ├── Cargo.toml │ │ └── src │ │ │ └── lib.rs │ ├── step2 │ │ ├── Cargo.toml │ │ └── src │ │ │ └── lib.rs │ ├── step3 │ │ ├── Cargo.toml │ │ └── src │ │ │ └── lib.rs │ └── step4 │ │ ├── Cargo.toml │ │ └── src │ │ └── lib.rs ├── shapes-part-1 │ ├── Cargo.toml │ └── src │ │ └── lib.rs ├── shapes-part-2 │ ├── Cargo.toml │ └── src │ │ └── lib.rs ├── shapes-part-3 │ ├── Cargo.toml │ └── src │ │ └── lib.rs ├── simple-db │ ├── step2 │ │ ├── Cargo.toml │ │ └── src │ │ │ └── lib.rs │ ├── step4a │ │ ├── Cargo.toml │ │ └── src │ │ │ └── lib.rs │ ├── step4b │ │ ├── Cargo.toml │ │ └── src │ │ │ └── lib.rs │ └── step4c │ │ ├── Cargo.toml │ │ └── src │ │ └── lib.rs ├── tcp-server-exercises │ ├── Cargo.toml │ └── src │ │ └── bin │ │ ├── echo-log-arc-mutex.rs │ │ ├── echo-log-scope.rs │ │ └── echo.rs └── urls-match-result │ ├── Cargo.toml │ ├── examples │ ├── step_1.rs │ ├── step_2.rs │ ├── step_3.rs │ ├── step_4.rs │ └── step_5.rs │ └── src │ ├── data │ └── content.txt │ └── main.rs ├── exercise-templates ├── Cargo.lock ├── Cargo.toml ├── async-chat │ ├── step1 │ │ ├── Cargo.toml │ │ └── src │ │ │ ├── client.rs │ │ │ ├── main.rs │ │ │ └── server.rs │ └── step2 │ │ ├── Cargo.toml │ │ └── src │ │ ├── client.rs │ │ ├── main.rs │ │ └── server.rs ├── iterators │ ├── Cargo.toml │ ├── numbers.txt │ └── src │ │ └── main.rs ├── rustlatin │ ├── step1 │ │ ├── Cargo.toml │ │ └── src │ │ │ └── lib.rs │ ├── step2 │ │ ├── Cargo.toml │ │ └── src │ │ │ └── lib.rs │ ├── step3 │ │ ├── Cargo.toml │ │ └── src │ │ │ └── lib.rs │ └── step4 │ │ ├── Cargo.toml │ │ └── src │ │ └── lib.rs └── urls-match-result │ ├── Cargo.toml │ └── src │ ├── data │ └── content.txt │ └── main.rs ├── justfile ├── nrf52-code ├── boards │ ├── .gitignore │ ├── dk-solution │ │ ├── .gitignore │ │ ├── Cargo.lock │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── build.rs │ │ ├── memory.x │ │ └── src │ │ │ ├── errata.rs │ │ │ ├── lib.rs │ │ │ ├── peripheral.rs │ │ │ ├── radio.rs │ │ │ └── usbd.rs │ ├── dk │ │ ├── .gitignore │ │ ├── Cargo.lock │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── build.rs │ │ ├── memory.x │ │ └── src │ │ │ ├── errata.rs │ │ │ ├── lib.rs │ │ │ ├── peripheral.rs │ │ │ ├── radio.rs │ │ │ └── usbd.rs │ ├── dongle-fw │ │ └── README.md │ └── dongle │ │ ├── .gitignore │ │ ├── Cargo.lock │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── build.rs │ │ ├── memory.x │ │ └── src │ │ └── lib.rs ├── consts │ ├── .gitignore │ ├── Cargo.lock │ ├── Cargo.toml │ └── src │ │ └── lib.rs ├── hal-app │ ├── .cargo │ │ └── config.toml │ ├── .gitignore │ ├── .vscode │ │ ├── .cortex-debug.registers.state.json │ │ ├── launch.json │ │ └── settings.json │ ├── Cargo.lock │ ├── Cargo.toml │ ├── hal-app.sublime-project │ └── src │ │ ├── bin │ │ ├── blinky.rs │ │ ├── buttons.rs │ │ ├── hello.rs │ │ ├── led.rs │ │ ├── panic.rs │ │ └── stack_overflow.rs │ │ └── lib.rs ├── loopback-fw │ ├── .cargo │ │ └── config.toml │ ├── .gitignore │ ├── Cargo.lock │ ├── Cargo.toml │ └── src │ │ └── main.rs ├── puzzle-fw │ ├── .cargo │ │ └── config.toml │ ├── .gitignore │ ├── Cargo.lock │ ├── Cargo.toml │ ├── build.rs │ └── src │ │ └── main.rs ├── radio-app │ ├── .cargo │ │ └── config.toml │ ├── .gitignore │ ├── .vscode │ │ ├── .cortex-debug.registers.state.json │ │ ├── launch.json │ │ └── settings.json │ ├── Cargo.lock │ ├── Cargo.toml │ ├── radio-app.sublime-project │ └── src │ │ ├── bin │ │ ├── blinky.rs │ │ ├── hello.rs │ │ ├── led.rs │ │ ├── panic.rs │ │ ├── radio-puzzle-1.rs │ │ ├── radio-puzzle-2.rs │ │ ├── radio-puzzle-3.rs │ │ ├── radio-puzzle-4.rs │ │ ├── radio-puzzle-5.rs │ │ ├── radio-puzzle-6.rs │ │ ├── radio-puzzle-7.rs │ │ ├── radio-puzzle-solution.rs │ │ ├── radio-puzzle.rs │ │ ├── radio-recv.rs │ │ ├── radio-send.rs │ │ └── stack_overflow.rs │ │ └── lib.rs ├── usb-app-solutions │ ├── .cargo │ │ └── config.toml │ ├── .gitignore │ ├── .vscode │ │ └── settings.json │ ├── Cargo.lock │ ├── Cargo.toml │ ├── src │ │ ├── bin │ │ │ ├── task-state.rs │ │ │ ├── usb-1.rs │ │ │ ├── usb-2.rs │ │ │ ├── usb-3.rs │ │ │ ├── usb-4.rs │ │ │ └── usb-5.rs │ │ └── lib.rs │ ├── traces │ │ ├── linux-configured.txt │ │ ├── linux-enumeration.txt │ │ ├── macos-configured.txt │ │ ├── macos-enumeration.txt │ │ ├── win-configured.txt │ │ └── win-enumeration.txt │ └── usb-app-solutions.sublime-project ├── usb-app │ ├── .cargo │ │ └── config.toml │ ├── .gitignore │ ├── .vscode │ │ ├── launch.json │ │ └── settings.json │ ├── Cargo.lock │ ├── Cargo.toml │ ├── src │ │ ├── bin │ │ │ ├── events.rs │ │ │ ├── hello.rs │ │ │ ├── rtic-hello.rs │ │ │ ├── stack_overflow.rs │ │ │ ├── task-state.rs │ │ │ ├── usb-1.rs │ │ │ ├── usb-2.rs │ │ │ ├── usb-3.rs │ │ │ ├── usb-4.rs │ │ │ └── vec.rs │ │ └── lib.rs │ └── usb-app.sublime-project ├── usb-lib-solutions │ ├── complete │ │ ├── .gitignore │ │ ├── Cargo.lock │ │ ├── Cargo.toml │ │ └── src │ │ │ └── lib.rs │ ├── get-descriptor-config │ │ ├── .gitignore │ │ ├── Cargo.lock │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ ├── get-device │ │ ├── .gitignore │ │ ├── Cargo.lock │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ │ └── lib.rs │ └── set-config │ │ ├── .gitignore │ │ ├── Cargo.lock │ │ ├── Cargo.toml │ │ ├── build.rs │ │ └── src │ │ └── lib.rs └── usb-lib │ ├── .gitignore │ ├── Cargo.lock │ ├── Cargo.toml │ ├── build.rs │ └── src │ └── lib.rs ├── qemu-code └── uart-driver │ ├── .cargo │ └── config.toml │ ├── .gitignore │ ├── .vscode │ └── settings.json │ ├── Cargo.lock │ ├── Cargo.toml │ ├── README.md │ ├── build.rs │ ├── criticalup.toml │ ├── memory.x │ ├── rust-toolchain.toml │ ├── src │ ├── lib.rs │ ├── main.rs │ ├── uart_driver.rs │ └── uart_driver_solution.rs │ └── uart-driver.sublime-project ├── tools └── tcp-client │ ├── Cargo.lock │ ├── Cargo.toml │ ├── README.md │ └── src │ └── main.rs └── xtask ├── .cargo └── config.toml ├── .gitignore ├── Cargo.lock ├── Cargo.toml └── src ├── main.rs └── tasks.rs /.cargo/config.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/.cargo/config.toml -------------------------------------------------------------------------------- /.github/actions/setup/action.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/.github/actions/setup/action.yml -------------------------------------------------------------------------------- /.github/workflows/parallel-build.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/.github/workflows/parallel-build.yml -------------------------------------------------------------------------------- /.github/workflows/weekly-canary-build.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/.github/workflows/weekly-canary-build.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/LICENSE.txt -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/README.md -------------------------------------------------------------------------------- /_redirects: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/_redirects -------------------------------------------------------------------------------- /cloudflare.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/cloudflare.sh -------------------------------------------------------------------------------- /describe.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/describe.sh -------------------------------------------------------------------------------- /exercise-book/book.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/book.toml -------------------------------------------------------------------------------- /exercise-book/src/SUMMARY.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/SUMMARY.md -------------------------------------------------------------------------------- /exercise-book/src/async-chat/accept_loop.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/async-chat/accept_loop.md -------------------------------------------------------------------------------- /exercise-book/src/async-chat/all_together.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/async-chat/all_together.md -------------------------------------------------------------------------------- /exercise-book/src/async-chat/clean_shutdown.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/async-chat/clean_shutdown.md -------------------------------------------------------------------------------- /exercise-book/src/async-chat/connecting_readers_and_writers.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/async-chat/connecting_readers_and_writers.md -------------------------------------------------------------------------------- /exercise-book/src/async-chat/final_server_code.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/async-chat/final_server_code.md -------------------------------------------------------------------------------- /exercise-book/src/async-chat/handling_disconnection.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/async-chat/handling_disconnection.md -------------------------------------------------------------------------------- /exercise-book/src/async-chat/implementing_a_client.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/async-chat/implementing_a_client.md -------------------------------------------------------------------------------- /exercise-book/src/async-chat/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/async-chat/index.md -------------------------------------------------------------------------------- /exercise-book/src/async-chat/receiving_messages.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/async-chat/receiving_messages.md -------------------------------------------------------------------------------- /exercise-book/src/async-chat/sending_messages.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/async-chat/sending_messages.md -------------------------------------------------------------------------------- /exercise-book/src/async-chat/specification.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/async-chat/specification.md -------------------------------------------------------------------------------- /exercise-book/src/building-linux-kernel-driver.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/building-linux-kernel-driver.md -------------------------------------------------------------------------------- /exercise-book/src/calculator.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/calculator.md -------------------------------------------------------------------------------- /exercise-book/src/connected-mailbox.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/connected-mailbox.md -------------------------------------------------------------------------------- /exercise-book/src/fizzbuzz-cheat-sheet.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/fizzbuzz-cheat-sheet.md -------------------------------------------------------------------------------- /exercise-book/src/fizzbuzz-match.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/fizzbuzz-match.md -------------------------------------------------------------------------------- /exercise-book/src/fizzbuzz.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/fizzbuzz.md -------------------------------------------------------------------------------- /exercise-book/src/green-yellow-game.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/green-yellow-game.md -------------------------------------------------------------------------------- /exercise-book/src/img/nrf52840_dk_board.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/img/nrf52840_dk_board.jpg -------------------------------------------------------------------------------- /exercise-book/src/img/puzzle_illustration.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/img/puzzle_illustration.jpg -------------------------------------------------------------------------------- /exercise-book/src/img/usb-all-endpoints.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/img/usb-all-endpoints.svg -------------------------------------------------------------------------------- /exercise-book/src/img/usb-configuration.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/img/usb-configuration.svg -------------------------------------------------------------------------------- /exercise-book/src/img/usb-control.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/img/usb-control.svg -------------------------------------------------------------------------------- /exercise-book/src/img/usb-device.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/img/usb-device.svg -------------------------------------------------------------------------------- /exercise-book/src/img/usb-endpoint.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/img/usb-endpoint.svg -------------------------------------------------------------------------------- /exercise-book/src/img/usb-interface.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/img/usb-interface.svg -------------------------------------------------------------------------------- /exercise-book/src/introduction.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/introduction.md -------------------------------------------------------------------------------- /exercise-book/src/iterators.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/iterators.md -------------------------------------------------------------------------------- /exercise-book/src/kani-linked-list.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/kani-linked-list.md -------------------------------------------------------------------------------- /exercise-book/src/multi-threaded-mailbox.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/multi-threaded-mailbox.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-code-organisation.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-code-organisation.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-hal-buttons.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-hal-buttons.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-hal-exercise.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-hal-exercise.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-hardware.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-hardware.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-preparation.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-preparation.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-radio-alt-containers.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-radio-alt-containers.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-radio-binary-size.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-radio-binary-size.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-radio-building-program.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-radio-building-program.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-radio-collision-avoidance.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-radio-collision-avoidance.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-radio-dongle.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-radio-dongle.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-radio-exercise.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-radio-exercise.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-radio-from-scratch.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-radio-from-scratch.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-radio-in.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-radio-in.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-radio-interrupt-handling.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-radio-interrupt-handling.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-radio-link-quality.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-radio-link-quality.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-radio-messages.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-radio-messages.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-radio-next-steps.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-radio-next-steps.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-radio-out.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-radio-out.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-radio-panicking.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-radio-panicking.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-radio-parts-embedded-program.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-radio-parts-embedded-program.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-radio-puzzle-help.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-radio-puzzle-help.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-radio-puzzle.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-radio-puzzle.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-radio-running-from-vsc.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-radio-running-from-vsc.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-radio-setup.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-radio-setup.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-radio-time.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-radio-time.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-radio-using-hal.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-radio-using-hal.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-references-resources.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-references-resources.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-tools.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-tools.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-tooltips.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-tooltips.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-troubleshoot-cargo-build.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-troubleshoot-cargo-build.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-troubleshoot-cargo-flash.md: -------------------------------------------------------------------------------- 1 | # cargo-flash is not working 2 | -------------------------------------------------------------------------------- /exercise-book/src/nrf52-troubleshoot-cargo-run-error.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-troubleshoot-cargo-run-error.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-troubleshoot-cargo-size.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-troubleshoot-cargo-size.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-troubleshoot-dongle-flash.md: -------------------------------------------------------------------------------- 1 | # dongle-flash is not working 2 | -------------------------------------------------------------------------------- /exercise-book/src/nrf52-troubleshoot-location-info.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-troubleshoot-location-info.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-troubleshoot-probe-not-found.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-troubleshoot-probe-not-found.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-troubleshoot-rust-analyzer.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-troubleshoot-rust-analyzer.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-troubleshoot-usb-dongle.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-troubleshoot-usb-dongle.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-troubleshooting.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-troubleshooting.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-advanced-next-steps.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-advanced-next-steps.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-api-documentation.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-api-documentation.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-configuration-descriptor.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-configuration-descriptor.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-control-transfers.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-control-transfers.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-data-stage.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-data-stage.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-dealing-with-registers.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-dealing-with-registers.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-device-descriptor.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-device-descriptor.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-dma.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-dma.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-endpoint-descriptor.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-endpoint-descriptor.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-event-handling.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-event-handling.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-exercise.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-exercise.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-extra-info.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-extra-info.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-getting-device-configured.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-getting-device-configured.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-hello-world.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-hello-world.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-idle-state.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-idle-state.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-inspecting-descriptors.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-inspecting-descriptors.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-interface-descriptor.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-interface-descriptor.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-interfaces.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-interfaces.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-listing-usb-devices.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-listing-usb-devices.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-rtic-hello.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-rtic-hello.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-set-config.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-set-config.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-setup-stage.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-setup-stage.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-stack-overflow-protection.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-stack-overflow-protection.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-supporting-standard-requests.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-supporting-standard-requests.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-task-state.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-task-state.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-usb-endpoints.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-usb-endpoints.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-usb-enumeration.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-usb-enumeration.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-usb-events.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-usb-events.md -------------------------------------------------------------------------------- /exercise-book/src/nrf52-usb-usb-specification.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/nrf52-usb-usb-specification.md -------------------------------------------------------------------------------- /exercise-book/src/realtime-v8r-preparation.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/realtime-v8r-preparation.md -------------------------------------------------------------------------------- /exercise-book/src/realtime-v8r-uart.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/realtime-v8r-uart.md -------------------------------------------------------------------------------- /exercise-book/src/realtime-withoutstd-println.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/realtime-withoutstd-println.md -------------------------------------------------------------------------------- /exercise-book/src/realtime-withoutstd.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/realtime-withoutstd.md -------------------------------------------------------------------------------- /exercise-book/src/rustlatin.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/rustlatin.md -------------------------------------------------------------------------------- /exercise-book/src/self-check.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/self-check.md -------------------------------------------------------------------------------- /exercise-book/src/shapes.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/shapes.md -------------------------------------------------------------------------------- /exercise-book/src/simple-db-knowledge.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/simple-db-knowledge.md -------------------------------------------------------------------------------- /exercise-book/src/simple-db-solution.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/simple-db-solution.md -------------------------------------------------------------------------------- /exercise-book/src/simple-db.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/simple-db.md -------------------------------------------------------------------------------- /exercise-book/src/tcp-server-log.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/tcp-server-log.md -------------------------------------------------------------------------------- /exercise-book/src/tcp-server.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/tcp-server.md -------------------------------------------------------------------------------- /exercise-book/src/urls-match-result.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/src/urls-match-result.md -------------------------------------------------------------------------------- /exercise-book/theme/head.hbs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-book/theme/head.hbs -------------------------------------------------------------------------------- /exercise-solutions/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/Cargo.lock -------------------------------------------------------------------------------- /exercise-solutions/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/async-chat/.gitignore: -------------------------------------------------------------------------------- 1 | book 2 | -------------------------------------------------------------------------------- /exercise-solutions/async-chat/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/async-chat/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/async-chat/src/client.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/async-chat/src/client.rs -------------------------------------------------------------------------------- /exercise-solutions/async-chat/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/async-chat/src/main.rs -------------------------------------------------------------------------------- /exercise-solutions/async-chat/src/server.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/async-chat/src/server.rs -------------------------------------------------------------------------------- /exercise-solutions/calculator/calc/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/calculator/calc/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/calculator/calc/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/calculator/calc/src/lib.rs -------------------------------------------------------------------------------- /exercise-solutions/connected-mailbox/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/connected-mailbox/Cargo.lock -------------------------------------------------------------------------------- /exercise-solutions/connected-mailbox/Cargo.toml: -------------------------------------------------------------------------------- 1 | [workspace] 2 | resolver= "2" 3 | members = ["simple-db", "tcp-server"] 4 | -------------------------------------------------------------------------------- /exercise-solutions/connected-mailbox/simple-db/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/connected-mailbox/simple-db/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/connected-mailbox/simple-db/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/connected-mailbox/simple-db/src/lib.rs -------------------------------------------------------------------------------- /exercise-solutions/connected-mailbox/simple-db/tests/test.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/connected-mailbox/simple-db/tests/test.rs -------------------------------------------------------------------------------- /exercise-solutions/connected-mailbox/tcp-server/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/connected-mailbox/tcp-server/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/connected-mailbox/tcp-server/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/connected-mailbox/tcp-server/src/main.rs -------------------------------------------------------------------------------- /exercise-solutions/fizzbuzz/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/fizzbuzz/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/fizzbuzz/src/examples/fizzbuzz.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/fizzbuzz/src/examples/fizzbuzz.rs -------------------------------------------------------------------------------- /exercise-solutions/fizzbuzz/src/examples/fizzbuzz_match.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/fizzbuzz/src/examples/fizzbuzz_match.rs -------------------------------------------------------------------------------- /exercise-solutions/fizzbuzz/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/fizzbuzz/src/main.rs -------------------------------------------------------------------------------- /exercise-solutions/green-yellow/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/green-yellow/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/green-yellow/src/bin/complete.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/green-yellow/src/bin/complete.rs -------------------------------------------------------------------------------- /exercise-solutions/green-yellow/src/bin/step2.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/green-yellow/src/bin/step2.rs -------------------------------------------------------------------------------- /exercise-solutions/green-yellow/src/bin/step3.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/green-yellow/src/bin/step3.rs -------------------------------------------------------------------------------- /exercise-solutions/green-yellow/src/bin/step4.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/green-yellow/src/bin/step4.rs -------------------------------------------------------------------------------- /exercise-solutions/green-yellow/src/bin/step5.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/green-yellow/src/bin/step5.rs -------------------------------------------------------------------------------- /exercise-solutions/green-yellow/src/bin/step6.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/green-yellow/src/bin/step6.rs -------------------------------------------------------------------------------- /exercise-solutions/iterators/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/iterators/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/iterators/numbers.txt: -------------------------------------------------------------------------------- 1 | //ignore everything that is not a number 2 | 1 3 | 2 4 | 3 5 | 4 6 | five 7 | 6 8 | 7 9 | ∞ 10 | 9 11 | X 12 | 10 13 | 11 -------------------------------------------------------------------------------- /exercise-solutions/iterators/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/iterators/src/main.rs -------------------------------------------------------------------------------- /exercise-solutions/kani-linked-list/.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/kani-linked-list/.vscode/settings.json -------------------------------------------------------------------------------- /exercise-solutions/kani-linked-list/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/kani-linked-list/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/kani-linked-list/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/kani-linked-list/src/lib.rs -------------------------------------------------------------------------------- /exercise-solutions/multi-threaded-mailbox/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/multi-threaded-mailbox/Cargo.lock -------------------------------------------------------------------------------- /exercise-solutions/multi-threaded-mailbox/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/multi-threaded-mailbox/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/multi-threaded-mailbox/simple-db/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/multi-threaded-mailbox/simple-db/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/multi-threaded-mailbox/simple-db/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/multi-threaded-mailbox/simple-db/src/lib.rs -------------------------------------------------------------------------------- /exercise-solutions/multi-threaded-mailbox/simple-db/tests/test.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/multi-threaded-mailbox/simple-db/tests/test.rs -------------------------------------------------------------------------------- /exercise-solutions/multi-threaded-mailbox/with-arc/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/multi-threaded-mailbox/with-arc/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/multi-threaded-mailbox/with-arc/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/multi-threaded-mailbox/with-arc/src/main.rs -------------------------------------------------------------------------------- /exercise-solutions/multi-threaded-mailbox/with-scoped-threads/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/multi-threaded-mailbox/with-scoped-threads/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/multi-threaded-mailbox/with-scoped-threads/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/multi-threaded-mailbox/with-scoped-threads/src/main.rs -------------------------------------------------------------------------------- /exercise-solutions/rustlatin/step1/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/rustlatin/step1/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/rustlatin/step1/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/rustlatin/step1/src/lib.rs -------------------------------------------------------------------------------- /exercise-solutions/rustlatin/step2/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/rustlatin/step2/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/rustlatin/step2/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/rustlatin/step2/src/lib.rs -------------------------------------------------------------------------------- /exercise-solutions/rustlatin/step3/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/rustlatin/step3/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/rustlatin/step3/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/rustlatin/step3/src/lib.rs -------------------------------------------------------------------------------- /exercise-solutions/rustlatin/step4/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/rustlatin/step4/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/rustlatin/step4/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/rustlatin/step4/src/lib.rs -------------------------------------------------------------------------------- /exercise-solutions/shapes-part-1/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/shapes-part-1/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/shapes-part-1/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/shapes-part-1/src/lib.rs -------------------------------------------------------------------------------- /exercise-solutions/shapes-part-2/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/shapes-part-2/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/shapes-part-2/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/shapes-part-2/src/lib.rs -------------------------------------------------------------------------------- /exercise-solutions/shapes-part-3/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/shapes-part-3/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/shapes-part-3/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/shapes-part-3/src/lib.rs -------------------------------------------------------------------------------- /exercise-solutions/simple-db/step2/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/simple-db/step2/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/simple-db/step2/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/simple-db/step2/src/lib.rs -------------------------------------------------------------------------------- /exercise-solutions/simple-db/step4a/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/simple-db/step4a/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/simple-db/step4a/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/simple-db/step4a/src/lib.rs -------------------------------------------------------------------------------- /exercise-solutions/simple-db/step4b/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/simple-db/step4b/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/simple-db/step4b/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/simple-db/step4b/src/lib.rs -------------------------------------------------------------------------------- /exercise-solutions/simple-db/step4c/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/simple-db/step4c/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/simple-db/step4c/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/simple-db/step4c/src/lib.rs -------------------------------------------------------------------------------- /exercise-solutions/tcp-server-exercises/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/tcp-server-exercises/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/tcp-server-exercises/src/bin/echo-log-arc-mutex.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/tcp-server-exercises/src/bin/echo-log-arc-mutex.rs -------------------------------------------------------------------------------- /exercise-solutions/tcp-server-exercises/src/bin/echo-log-scope.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/tcp-server-exercises/src/bin/echo-log-scope.rs -------------------------------------------------------------------------------- /exercise-solutions/tcp-server-exercises/src/bin/echo.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/tcp-server-exercises/src/bin/echo.rs -------------------------------------------------------------------------------- /exercise-solutions/urls-match-result/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/urls-match-result/Cargo.toml -------------------------------------------------------------------------------- /exercise-solutions/urls-match-result/examples/step_1.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/urls-match-result/examples/step_1.rs -------------------------------------------------------------------------------- /exercise-solutions/urls-match-result/examples/step_2.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/urls-match-result/examples/step_2.rs -------------------------------------------------------------------------------- /exercise-solutions/urls-match-result/examples/step_3.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/urls-match-result/examples/step_3.rs -------------------------------------------------------------------------------- /exercise-solutions/urls-match-result/examples/step_4.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/urls-match-result/examples/step_4.rs -------------------------------------------------------------------------------- /exercise-solutions/urls-match-result/examples/step_5.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/urls-match-result/examples/step_5.rs -------------------------------------------------------------------------------- /exercise-solutions/urls-match-result/src/data/content.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/urls-match-result/src/data/content.txt -------------------------------------------------------------------------------- /exercise-solutions/urls-match-result/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-solutions/urls-match-result/src/main.rs -------------------------------------------------------------------------------- /exercise-templates/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/Cargo.lock -------------------------------------------------------------------------------- /exercise-templates/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/Cargo.toml -------------------------------------------------------------------------------- /exercise-templates/async-chat/step1/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/async-chat/step1/Cargo.toml -------------------------------------------------------------------------------- /exercise-templates/async-chat/step1/src/client.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/async-chat/step1/src/client.rs -------------------------------------------------------------------------------- /exercise-templates/async-chat/step1/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/async-chat/step1/src/main.rs -------------------------------------------------------------------------------- /exercise-templates/async-chat/step1/src/server.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/async-chat/step1/src/server.rs -------------------------------------------------------------------------------- /exercise-templates/async-chat/step2/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/async-chat/step2/Cargo.toml -------------------------------------------------------------------------------- /exercise-templates/async-chat/step2/src/client.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/async-chat/step2/src/client.rs -------------------------------------------------------------------------------- /exercise-templates/async-chat/step2/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/async-chat/step2/src/main.rs -------------------------------------------------------------------------------- /exercise-templates/async-chat/step2/src/server.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/async-chat/step2/src/server.rs -------------------------------------------------------------------------------- /exercise-templates/iterators/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/iterators/Cargo.toml -------------------------------------------------------------------------------- /exercise-templates/iterators/numbers.txt: -------------------------------------------------------------------------------- 1 | //ignore everything that is not a number 2 | 1 3 | 2 4 | 3 5 | 4 6 | five 7 | 6 8 | 7 9 | ∞ 10 | 9 11 | X 12 | 10 13 | 11 -------------------------------------------------------------------------------- /exercise-templates/iterators/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/iterators/src/main.rs -------------------------------------------------------------------------------- /exercise-templates/rustlatin/step1/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/rustlatin/step1/Cargo.toml -------------------------------------------------------------------------------- /exercise-templates/rustlatin/step1/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/rustlatin/step1/src/lib.rs -------------------------------------------------------------------------------- /exercise-templates/rustlatin/step2/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/rustlatin/step2/Cargo.toml -------------------------------------------------------------------------------- /exercise-templates/rustlatin/step2/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/rustlatin/step2/src/lib.rs -------------------------------------------------------------------------------- /exercise-templates/rustlatin/step3/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/rustlatin/step3/Cargo.toml -------------------------------------------------------------------------------- /exercise-templates/rustlatin/step3/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/rustlatin/step3/src/lib.rs -------------------------------------------------------------------------------- /exercise-templates/rustlatin/step4/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/rustlatin/step4/Cargo.toml -------------------------------------------------------------------------------- /exercise-templates/rustlatin/step4/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/rustlatin/step4/src/lib.rs -------------------------------------------------------------------------------- /exercise-templates/urls-match-result/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/urls-match-result/Cargo.toml -------------------------------------------------------------------------------- /exercise-templates/urls-match-result/src/data/content.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/urls-match-result/src/data/content.txt -------------------------------------------------------------------------------- /exercise-templates/urls-match-result/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/exercise-templates/urls-match-result/src/main.rs -------------------------------------------------------------------------------- /justfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/justfile -------------------------------------------------------------------------------- /nrf52-code/boards/.gitignore: -------------------------------------------------------------------------------- 1 | Cargo.lock -------------------------------------------------------------------------------- /nrf52-code/boards/dk-solution/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | -------------------------------------------------------------------------------- /nrf52-code/boards/dk-solution/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dk-solution/Cargo.lock -------------------------------------------------------------------------------- /nrf52-code/boards/dk-solution/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dk-solution/Cargo.toml -------------------------------------------------------------------------------- /nrf52-code/boards/dk-solution/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dk-solution/README.md -------------------------------------------------------------------------------- /nrf52-code/boards/dk-solution/build.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dk-solution/build.rs -------------------------------------------------------------------------------- /nrf52-code/boards/dk-solution/memory.x: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dk-solution/memory.x -------------------------------------------------------------------------------- /nrf52-code/boards/dk-solution/src/errata.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dk-solution/src/errata.rs -------------------------------------------------------------------------------- /nrf52-code/boards/dk-solution/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dk-solution/src/lib.rs -------------------------------------------------------------------------------- /nrf52-code/boards/dk-solution/src/peripheral.rs: -------------------------------------------------------------------------------- 1 | //! Low level access to the nRF52840 peripheral 2 | 3 | pub use hal::pac::{POWER, USBD}; 4 | -------------------------------------------------------------------------------- /nrf52-code/boards/dk-solution/src/radio.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dk-solution/src/radio.rs -------------------------------------------------------------------------------- /nrf52-code/boards/dk-solution/src/usbd.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dk-solution/src/usbd.rs -------------------------------------------------------------------------------- /nrf52-code/boards/dk/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | -------------------------------------------------------------------------------- /nrf52-code/boards/dk/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dk/Cargo.lock -------------------------------------------------------------------------------- /nrf52-code/boards/dk/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dk/Cargo.toml -------------------------------------------------------------------------------- /nrf52-code/boards/dk/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dk/README.md -------------------------------------------------------------------------------- /nrf52-code/boards/dk/build.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dk/build.rs -------------------------------------------------------------------------------- /nrf52-code/boards/dk/memory.x: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dk/memory.x -------------------------------------------------------------------------------- /nrf52-code/boards/dk/src/errata.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dk/src/errata.rs -------------------------------------------------------------------------------- /nrf52-code/boards/dk/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dk/src/lib.rs -------------------------------------------------------------------------------- /nrf52-code/boards/dk/src/peripheral.rs: -------------------------------------------------------------------------------- 1 | //! Low level access to the nRF52840 peripheral 2 | 3 | pub use hal::pac::{POWER, USBD}; 4 | -------------------------------------------------------------------------------- /nrf52-code/boards/dk/src/radio.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dk/src/radio.rs -------------------------------------------------------------------------------- /nrf52-code/boards/dk/src/usbd.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dk/src/usbd.rs -------------------------------------------------------------------------------- /nrf52-code/boards/dongle-fw/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dongle-fw/README.md -------------------------------------------------------------------------------- /nrf52-code/boards/dongle/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | -------------------------------------------------------------------------------- /nrf52-code/boards/dongle/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dongle/Cargo.lock -------------------------------------------------------------------------------- /nrf52-code/boards/dongle/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dongle/Cargo.toml -------------------------------------------------------------------------------- /nrf52-code/boards/dongle/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dongle/README.md -------------------------------------------------------------------------------- /nrf52-code/boards/dongle/build.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dongle/build.rs -------------------------------------------------------------------------------- /nrf52-code/boards/dongle/memory.x: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dongle/memory.x -------------------------------------------------------------------------------- /nrf52-code/boards/dongle/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/boards/dongle/src/lib.rs -------------------------------------------------------------------------------- /nrf52-code/consts/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | -------------------------------------------------------------------------------- /nrf52-code/consts/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/consts/Cargo.lock -------------------------------------------------------------------------------- /nrf52-code/consts/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/consts/Cargo.toml -------------------------------------------------------------------------------- /nrf52-code/consts/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/consts/src/lib.rs -------------------------------------------------------------------------------- /nrf52-code/hal-app/.cargo/config.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/hal-app/.cargo/config.toml -------------------------------------------------------------------------------- /nrf52-code/hal-app/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | *.sublime-workspace 3 | -------------------------------------------------------------------------------- /nrf52-code/hal-app/.vscode/.cortex-debug.registers.state.json: -------------------------------------------------------------------------------- 1 | [] -------------------------------------------------------------------------------- /nrf52-code/hal-app/.vscode/launch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/hal-app/.vscode/launch.json -------------------------------------------------------------------------------- /nrf52-code/hal-app/.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/hal-app/.vscode/settings.json -------------------------------------------------------------------------------- /nrf52-code/hal-app/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/hal-app/Cargo.lock -------------------------------------------------------------------------------- /nrf52-code/hal-app/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/hal-app/Cargo.toml -------------------------------------------------------------------------------- /nrf52-code/hal-app/hal-app.sublime-project: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/hal-app/hal-app.sublime-project -------------------------------------------------------------------------------- /nrf52-code/hal-app/src/bin/blinky.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/hal-app/src/bin/blinky.rs -------------------------------------------------------------------------------- /nrf52-code/hal-app/src/bin/buttons.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/hal-app/src/bin/buttons.rs -------------------------------------------------------------------------------- /nrf52-code/hal-app/src/bin/hello.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/hal-app/src/bin/hello.rs -------------------------------------------------------------------------------- /nrf52-code/hal-app/src/bin/led.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/hal-app/src/bin/led.rs -------------------------------------------------------------------------------- /nrf52-code/hal-app/src/bin/panic.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/hal-app/src/bin/panic.rs -------------------------------------------------------------------------------- /nrf52-code/hal-app/src/bin/stack_overflow.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/hal-app/src/bin/stack_overflow.rs -------------------------------------------------------------------------------- /nrf52-code/hal-app/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/hal-app/src/lib.rs -------------------------------------------------------------------------------- /nrf52-code/loopback-fw/.cargo/config.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/loopback-fw/.cargo/config.toml -------------------------------------------------------------------------------- /nrf52-code/loopback-fw/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | -------------------------------------------------------------------------------- /nrf52-code/loopback-fw/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/loopback-fw/Cargo.lock -------------------------------------------------------------------------------- /nrf52-code/loopback-fw/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/loopback-fw/Cargo.toml -------------------------------------------------------------------------------- /nrf52-code/loopback-fw/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/loopback-fw/src/main.rs -------------------------------------------------------------------------------- /nrf52-code/puzzle-fw/.cargo/config.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/puzzle-fw/.cargo/config.toml -------------------------------------------------------------------------------- /nrf52-code/puzzle-fw/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | -------------------------------------------------------------------------------- /nrf52-code/puzzle-fw/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/puzzle-fw/Cargo.lock -------------------------------------------------------------------------------- /nrf52-code/puzzle-fw/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/puzzle-fw/Cargo.toml -------------------------------------------------------------------------------- /nrf52-code/puzzle-fw/build.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/puzzle-fw/build.rs -------------------------------------------------------------------------------- /nrf52-code/puzzle-fw/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/puzzle-fw/src/main.rs -------------------------------------------------------------------------------- /nrf52-code/radio-app/.cargo/config.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/.cargo/config.toml -------------------------------------------------------------------------------- /nrf52-code/radio-app/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | *.sublime-workspace 3 | -------------------------------------------------------------------------------- /nrf52-code/radio-app/.vscode/.cortex-debug.registers.state.json: -------------------------------------------------------------------------------- 1 | [] -------------------------------------------------------------------------------- /nrf52-code/radio-app/.vscode/launch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/.vscode/launch.json -------------------------------------------------------------------------------- /nrf52-code/radio-app/.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/.vscode/settings.json -------------------------------------------------------------------------------- /nrf52-code/radio-app/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/Cargo.lock -------------------------------------------------------------------------------- /nrf52-code/radio-app/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/Cargo.toml -------------------------------------------------------------------------------- /nrf52-code/radio-app/radio-app.sublime-project: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/radio-app.sublime-project -------------------------------------------------------------------------------- /nrf52-code/radio-app/src/bin/blinky.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/src/bin/blinky.rs -------------------------------------------------------------------------------- /nrf52-code/radio-app/src/bin/hello.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/src/bin/hello.rs -------------------------------------------------------------------------------- /nrf52-code/radio-app/src/bin/led.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/src/bin/led.rs -------------------------------------------------------------------------------- /nrf52-code/radio-app/src/bin/panic.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/src/bin/panic.rs -------------------------------------------------------------------------------- /nrf52-code/radio-app/src/bin/radio-puzzle-1.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/src/bin/radio-puzzle-1.rs -------------------------------------------------------------------------------- /nrf52-code/radio-app/src/bin/radio-puzzle-2.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/src/bin/radio-puzzle-2.rs -------------------------------------------------------------------------------- /nrf52-code/radio-app/src/bin/radio-puzzle-3.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/src/bin/radio-puzzle-3.rs -------------------------------------------------------------------------------- /nrf52-code/radio-app/src/bin/radio-puzzle-4.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/src/bin/radio-puzzle-4.rs -------------------------------------------------------------------------------- /nrf52-code/radio-app/src/bin/radio-puzzle-5.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/src/bin/radio-puzzle-5.rs -------------------------------------------------------------------------------- /nrf52-code/radio-app/src/bin/radio-puzzle-6.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/src/bin/radio-puzzle-6.rs -------------------------------------------------------------------------------- /nrf52-code/radio-app/src/bin/radio-puzzle-7.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/src/bin/radio-puzzle-7.rs -------------------------------------------------------------------------------- /nrf52-code/radio-app/src/bin/radio-puzzle-solution.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/src/bin/radio-puzzle-solution.rs -------------------------------------------------------------------------------- /nrf52-code/radio-app/src/bin/radio-puzzle.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/src/bin/radio-puzzle.rs -------------------------------------------------------------------------------- /nrf52-code/radio-app/src/bin/radio-recv.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/src/bin/radio-recv.rs -------------------------------------------------------------------------------- /nrf52-code/radio-app/src/bin/radio-send.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/src/bin/radio-send.rs -------------------------------------------------------------------------------- /nrf52-code/radio-app/src/bin/stack_overflow.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/src/bin/stack_overflow.rs -------------------------------------------------------------------------------- /nrf52-code/radio-app/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/radio-app/src/lib.rs -------------------------------------------------------------------------------- /nrf52-code/usb-app-solutions/.cargo/config.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app-solutions/.cargo/config.toml -------------------------------------------------------------------------------- /nrf52-code/usb-app-solutions/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | *.sublime-workspace 3 | -------------------------------------------------------------------------------- /nrf52-code/usb-app-solutions/.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app-solutions/.vscode/settings.json -------------------------------------------------------------------------------- /nrf52-code/usb-app-solutions/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app-solutions/Cargo.lock -------------------------------------------------------------------------------- /nrf52-code/usb-app-solutions/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app-solutions/Cargo.toml -------------------------------------------------------------------------------- /nrf52-code/usb-app-solutions/src/bin/task-state.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app-solutions/src/bin/task-state.rs -------------------------------------------------------------------------------- /nrf52-code/usb-app-solutions/src/bin/usb-1.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app-solutions/src/bin/usb-1.rs -------------------------------------------------------------------------------- /nrf52-code/usb-app-solutions/src/bin/usb-2.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app-solutions/src/bin/usb-2.rs -------------------------------------------------------------------------------- /nrf52-code/usb-app-solutions/src/bin/usb-3.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app-solutions/src/bin/usb-3.rs -------------------------------------------------------------------------------- /nrf52-code/usb-app-solutions/src/bin/usb-4.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app-solutions/src/bin/usb-4.rs -------------------------------------------------------------------------------- /nrf52-code/usb-app-solutions/src/bin/usb-5.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app-solutions/src/bin/usb-5.rs -------------------------------------------------------------------------------- /nrf52-code/usb-app-solutions/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app-solutions/src/lib.rs -------------------------------------------------------------------------------- /nrf52-code/usb-app-solutions/traces/linux-configured.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app-solutions/traces/linux-configured.txt -------------------------------------------------------------------------------- /nrf52-code/usb-app-solutions/traces/linux-enumeration.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app-solutions/traces/linux-enumeration.txt -------------------------------------------------------------------------------- /nrf52-code/usb-app-solutions/traces/macos-configured.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app-solutions/traces/macos-configured.txt -------------------------------------------------------------------------------- /nrf52-code/usb-app-solutions/traces/macos-enumeration.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app-solutions/traces/macos-enumeration.txt -------------------------------------------------------------------------------- /nrf52-code/usb-app-solutions/traces/win-configured.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app-solutions/traces/win-configured.txt -------------------------------------------------------------------------------- /nrf52-code/usb-app-solutions/traces/win-enumeration.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app-solutions/traces/win-enumeration.txt -------------------------------------------------------------------------------- /nrf52-code/usb-app-solutions/usb-app-solutions.sublime-project: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app-solutions/usb-app-solutions.sublime-project -------------------------------------------------------------------------------- /nrf52-code/usb-app/.cargo/config.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app/.cargo/config.toml -------------------------------------------------------------------------------- /nrf52-code/usb-app/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | *.sublime-workspace 3 | -------------------------------------------------------------------------------- /nrf52-code/usb-app/.vscode/launch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app/.vscode/launch.json -------------------------------------------------------------------------------- /nrf52-code/usb-app/.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app/.vscode/settings.json -------------------------------------------------------------------------------- /nrf52-code/usb-app/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app/Cargo.lock -------------------------------------------------------------------------------- /nrf52-code/usb-app/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app/Cargo.toml -------------------------------------------------------------------------------- /nrf52-code/usb-app/src/bin/events.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app/src/bin/events.rs -------------------------------------------------------------------------------- /nrf52-code/usb-app/src/bin/hello.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app/src/bin/hello.rs -------------------------------------------------------------------------------- /nrf52-code/usb-app/src/bin/rtic-hello.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app/src/bin/rtic-hello.rs -------------------------------------------------------------------------------- /nrf52-code/usb-app/src/bin/stack_overflow.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app/src/bin/stack_overflow.rs -------------------------------------------------------------------------------- /nrf52-code/usb-app/src/bin/task-state.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app/src/bin/task-state.rs -------------------------------------------------------------------------------- /nrf52-code/usb-app/src/bin/usb-1.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app/src/bin/usb-1.rs -------------------------------------------------------------------------------- /nrf52-code/usb-app/src/bin/usb-2.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app/src/bin/usb-2.rs -------------------------------------------------------------------------------- /nrf52-code/usb-app/src/bin/usb-3.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app/src/bin/usb-3.rs -------------------------------------------------------------------------------- /nrf52-code/usb-app/src/bin/usb-4.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app/src/bin/usb-4.rs -------------------------------------------------------------------------------- /nrf52-code/usb-app/src/bin/vec.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app/src/bin/vec.rs -------------------------------------------------------------------------------- /nrf52-code/usb-app/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app/src/lib.rs -------------------------------------------------------------------------------- /nrf52-code/usb-app/usb-app.sublime-project: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-app/usb-app.sublime-project -------------------------------------------------------------------------------- /nrf52-code/usb-lib-solutions/complete/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | Cargo.lock 3 | -------------------------------------------------------------------------------- /nrf52-code/usb-lib-solutions/complete/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-lib-solutions/complete/Cargo.lock -------------------------------------------------------------------------------- /nrf52-code/usb-lib-solutions/complete/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-lib-solutions/complete/Cargo.toml -------------------------------------------------------------------------------- /nrf52-code/usb-lib-solutions/complete/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-lib-solutions/complete/src/lib.rs -------------------------------------------------------------------------------- /nrf52-code/usb-lib-solutions/get-descriptor-config/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | Cargo.lock 3 | -------------------------------------------------------------------------------- /nrf52-code/usb-lib-solutions/get-descriptor-config/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-lib-solutions/get-descriptor-config/Cargo.lock -------------------------------------------------------------------------------- /nrf52-code/usb-lib-solutions/get-descriptor-config/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-lib-solutions/get-descriptor-config/Cargo.toml -------------------------------------------------------------------------------- /nrf52-code/usb-lib-solutions/get-descriptor-config/build.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-lib-solutions/get-descriptor-config/build.rs -------------------------------------------------------------------------------- /nrf52-code/usb-lib-solutions/get-descriptor-config/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-lib-solutions/get-descriptor-config/src/lib.rs -------------------------------------------------------------------------------- /nrf52-code/usb-lib-solutions/get-device/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | Cargo.lock 3 | -------------------------------------------------------------------------------- /nrf52-code/usb-lib-solutions/get-device/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-lib-solutions/get-device/Cargo.lock -------------------------------------------------------------------------------- /nrf52-code/usb-lib-solutions/get-device/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-lib-solutions/get-device/Cargo.toml -------------------------------------------------------------------------------- /nrf52-code/usb-lib-solutions/get-device/build.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-lib-solutions/get-device/build.rs -------------------------------------------------------------------------------- /nrf52-code/usb-lib-solutions/get-device/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-lib-solutions/get-device/src/lib.rs -------------------------------------------------------------------------------- /nrf52-code/usb-lib-solutions/set-config/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | Cargo.lock 3 | -------------------------------------------------------------------------------- /nrf52-code/usb-lib-solutions/set-config/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-lib-solutions/set-config/Cargo.lock -------------------------------------------------------------------------------- /nrf52-code/usb-lib-solutions/set-config/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-lib-solutions/set-config/Cargo.toml -------------------------------------------------------------------------------- /nrf52-code/usb-lib-solutions/set-config/build.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-lib-solutions/set-config/build.rs -------------------------------------------------------------------------------- /nrf52-code/usb-lib-solutions/set-config/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-lib-solutions/set-config/src/lib.rs -------------------------------------------------------------------------------- /nrf52-code/usb-lib/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | Cargo.lock 3 | -------------------------------------------------------------------------------- /nrf52-code/usb-lib/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-lib/Cargo.lock -------------------------------------------------------------------------------- /nrf52-code/usb-lib/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-lib/Cargo.toml -------------------------------------------------------------------------------- /nrf52-code/usb-lib/build.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-lib/build.rs -------------------------------------------------------------------------------- /nrf52-code/usb-lib/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/nrf52-code/usb-lib/src/lib.rs -------------------------------------------------------------------------------- /qemu-code/uart-driver/.cargo/config.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/qemu-code/uart-driver/.cargo/config.toml -------------------------------------------------------------------------------- /qemu-code/uart-driver/.gitignore: -------------------------------------------------------------------------------- 1 | target/ 2 | *.sublime-workspace 3 | -------------------------------------------------------------------------------- /qemu-code/uart-driver/.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/qemu-code/uart-driver/.vscode/settings.json -------------------------------------------------------------------------------- /qemu-code/uart-driver/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/qemu-code/uart-driver/Cargo.lock -------------------------------------------------------------------------------- /qemu-code/uart-driver/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/qemu-code/uart-driver/Cargo.toml -------------------------------------------------------------------------------- /qemu-code/uart-driver/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/qemu-code/uart-driver/README.md -------------------------------------------------------------------------------- /qemu-code/uart-driver/build.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/qemu-code/uart-driver/build.rs -------------------------------------------------------------------------------- /qemu-code/uart-driver/criticalup.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/qemu-code/uart-driver/criticalup.toml -------------------------------------------------------------------------------- /qemu-code/uart-driver/memory.x: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/qemu-code/uart-driver/memory.x -------------------------------------------------------------------------------- /qemu-code/uart-driver/rust-toolchain.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/qemu-code/uart-driver/rust-toolchain.toml -------------------------------------------------------------------------------- /qemu-code/uart-driver/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/qemu-code/uart-driver/src/lib.rs -------------------------------------------------------------------------------- /qemu-code/uart-driver/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/qemu-code/uart-driver/src/main.rs -------------------------------------------------------------------------------- /qemu-code/uart-driver/src/uart_driver.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/qemu-code/uart-driver/src/uart_driver.rs -------------------------------------------------------------------------------- /qemu-code/uart-driver/src/uart_driver_solution.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/qemu-code/uart-driver/src/uart_driver_solution.rs -------------------------------------------------------------------------------- /qemu-code/uart-driver/uart-driver.sublime-project: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/qemu-code/uart-driver/uart-driver.sublime-project -------------------------------------------------------------------------------- /tools/tcp-client/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/tools/tcp-client/Cargo.lock -------------------------------------------------------------------------------- /tools/tcp-client/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/tools/tcp-client/Cargo.toml -------------------------------------------------------------------------------- /tools/tcp-client/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/tools/tcp-client/README.md -------------------------------------------------------------------------------- /tools/tcp-client/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/tools/tcp-client/src/main.rs -------------------------------------------------------------------------------- /xtask/.cargo/config.toml: -------------------------------------------------------------------------------- 1 | [alias] 2 | xtask = "run --manifest-path ./Cargo.toml --" -------------------------------------------------------------------------------- /xtask/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | -------------------------------------------------------------------------------- /xtask/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/xtask/Cargo.lock -------------------------------------------------------------------------------- /xtask/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/xtask/Cargo.toml -------------------------------------------------------------------------------- /xtask/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/xtask/src/main.rs -------------------------------------------------------------------------------- /xtask/src/tasks.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferrous-systems/rust-exercises/HEAD/xtask/src/tasks.rs --------------------------------------------------------------------------------