Rust Proactive Introduction
The code is a bit messy but it serves just as a personal Rust Playground to play around and understand the language. You can use to explore language feature and try things out. This README.md
file will help you setup the IDE too. For managing the Rust Programming Language, I use asdf.
Run the project
cargo run
Messy code structure
#[path="basic.rs"] mod basic;
#[path="intermediate.rs"] mod intermediate;
#[path="advanced.rs"] mod advanced;
fn main() {
basic::basic_rust();
intermediate::intermediate_rust();
advanced::advanced_rust();
}
So the files to check and play around are:
basic.rs
intermediate.rs
advanced.rs
Setup IDE (VSCode)
Extensions
- rust-analyzer: Supports code completion, go to definition, go to implementation and go to type definiton, syntax highlighting. You can find more about rust-analyzer at the official website.\
- crates: To manage the dependencies with
Cargo.toml
file. - CodeLLDB: Supports native and remote debugging, disassembly, reverse debugging, core dump inspection. Here more about codelldb.
- Better TOML: Syntax hightlighting and validation for
.toml
files andmarkdown
files. - Error Lens:: Tool that helps you highlight errors, warnings and show other kinds of language diagnostics as soon as you make a change in the code.
Themes
Font
More IDE customization
- Setting up Rust in VSCode for Linux
- Developing in Rust using Visual Studio Code
- Rust recommended VSCode Extensions
- Best fonts for programming with VSCode
- The best VSCode themes
Rust Programming Language Knowledge Base
License
Copyright 2022 Fernando Cejas
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.